如何使用urllib2的python代码获取(当前url +查询字符串)?

时间:2011-02-23 11:24:05

标签: python url urllib2

我需要使用我使用的查询字符串读取当前网址吗?

表示我需要获取浏览器当前地址栏的URL ..

2 个答案:

答案 0 :(得分:4)

urllib2.Request对象提供geturl()方法,该方法返回请求的完整URL。然后,您可以将其传递给urlparse.urlparse(),{{3}}将URL拆分为每个URL的六个组件。然后,您可以通过query属性访问查询部分。

一个例子:

>>> from urllib2 import urlopen
>>> from urlparse import urlparse
>>> req = urlopen('http://capitalfm.com/?foo=bar')
>>> req.geturl()
'http://www.capitalfm.com/?foo=bar'
>>> url = urlparse(req.geturl())
>>> url.query
'foo=bar'

答案 1 :(得分:0)

据推测,如果您使用的是urllib2,那么您已经拥有了便利的url。为了从URL中提取查询字符串,您可以在python 2中使用方便的urlparse函数(该函数已移至python 3中的其他模块)。

>>> from urlparse import urlparse, parse_qs
>>> url = 'www.example.com/file.php?id=2'
>>> urlparse("www.example.com/file.php?id=2").query
'id=2'
>>>