如何在python网页中获取当前URL?

Bog*_* P. 10 python web-applications

我是Python的菜鸟.刚刚安装它,花了2个小时googleing如何获得在URL中发送到Python脚本的简单参数

发现了这个

非常有帮助,除了我无法在世界上任何事情找出如何更换

import urlparse
url = 'http://foo.appspot.com/abc?def=ghi'
parsed = urlparse.urlparse(url)
print urlparse.parse_qs(parsed.query)['def']
Run Code Online (Sandbox Code Playgroud)

我将如何替换url ='string'以使其工作?我只想访问http://site.com/test/test.py?param=abc并查看abc打印.


Alex回答后的最终代码:

url = os.environ["REQUEST_URI"] 
parsed = urlparse.urlparse(url) 
print urlparse.parse_qs(parsed.query)['param']
Run Code Online (Sandbox Code Playgroud)

Ale*_*ian 8

如果您没有任何库可以为您执行此操作,则可以从通过浏览器发送到脚本的HTTP请求构造当前URL.

您感兴趣的标题Host以及HTTP方法之后的任何标题(可能GET在您的情况下).这里有一些更多的解释(第一个链接似乎没问题,你可以免费谷歌更多:).

这个答案向您展示了如何在CGI脚本中获取标题:

如果您作为CGI运行,则无法直接读取HTTP标头,但Web服务器会将大部分信息放入环境变量中.你可以选择它os.environ[].

如果你这样做是为了练习,那就没关系,因为你将会了解幕后的内容.如果您正在构建任何可重复使用的东西,我建议您使用库或框架,这样您就不会在每次需要时重新发明轮子.