You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python新手求助:如何用核心库获取URL参数值(无需框架)

在Python中获取URL参数及完整请求URL(核心库实现)

1. 解析已知URL的参数值

你写的代码其实已经完成了参数的解析工作,只是缺少最终的取值步骤。解析后的query是一个字典,直接通过键名就能拿到对应参数值:

import urllib.parse as urlparse

url = "http://domainanme.com/api/filename.py?para_name=value"

url_parts = urlparse.urlparse(url)
query = dict(urlparse.parse_qsl(url_parts.query))
# 获取指定参数的值
print(query['para_name'])  # 输出:value

如果担心参数不存在导致报错,可以用字典的get()方法设置默认值:

print(query.get('para_name', '参数不存在时的默认值'))

2. Web环境中获取当前请求的完整URL及参数

PHP里的$_GET是基于Web服务器的请求上下文实现的,Python如果是普通脚本无法直接获取,但在CGI标准的运行环境中(无需任何框架,只用Python核心库),可以通过环境变量实现类似效果:

获取完整请求URL

利用HTTP_HOST和REQUEST_URI环境变量拼接完整URL:

import os

scheme = 'http'  # 若使用HTTPS则改为'https'
host = os.environ.get('HTTP_HOST')
request_uri = os.environ.get('REQUEST_URI')
full_url = f"{scheme}://{host}{request_uri}"

获取请求参数(类似PHP的$_GET)

直接解析QUERY_STRING环境变量即可:

import os
from urllib.parse import parse_qsl

query_string = os.environ.get('QUERY_STRING', '')
query_params = dict(parse_qsl(query_string))
# 获取指定参数
print(query_params.get('para_name'))

内容的提问来源于stack exchange,提问作者Udhayakumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 09:10:40