使用OpenerDirector和处理程序时检查urllib2.Request属性
在使用 urllib2.OpenerDirector 的时候,能不能查看一个 Python urllib2.Request 对象的属性,比如网址、数据、头信息等等?
cookie_jar = cookielib.CookieJar()
opener = urllib2.OpenerDirector()
opener.add_handler(urllib2.ProxyHandler())
opener.add_handler(urllib2.UnknownHandler())
opener.add_handler(urllib2.HTTPHandler())
opener.add_handler(urllib2.HTTPRedirectHandler())
opener.add_handler(urllib2.HTTPDefaultErrorHandler())
opener.add_handler(urllib2.HTTPSHandler())
opener.add_handler(urllib2.HTTPErrorProcessor())
opener.add_handler(urllib2.HTTPCookieProcessor(cookie_jar))
request = urllib2.Request('http://example.com')
response = opener.open(request)
在请求对象被打开之前,它没有设置任何属性。有没有办法访问这些属性呢?
1 个回答
2
我不太确定你具体在找哪些属性,但希望这能解答你的问题。你提到的所有属性都在请求类(Request class)里面。要查看你列出的那些属性,可以使用这些:
url = request.get_full_url()
data = request.get_data()
headers = request.headers
还有一些函数可以用来修改数据、头信息等等。
更多内容可以在文档中找到:http://docs.python.org/library/urllib2.html#request-objects