处理没有urllib2和cookielib的cookie

标准免责声明:阅读,搜索,阅读更多内容.如果您有链接,
请自由自由指向我.
我正在使用HTTPLIB来为Web应用构建一些功能测试
写作.我们不使用Urllib2,因为我们需要对PUT和
删除方法,Urllib2不使用.
我们还需要客户端曲奇处理.所以,我开始阅读
Cookielib并遇到问题.饼干的处理很牢固
紧密地到Urllib2的请求对象. httplib有些不同
其请求对象中的语义.因此,您可以将cookielib与httplib一起使用.
cookie lib没有简单的功能(我能找到)
set-cookie标头并恢复一个cookiejar对象(甚至是列表
cookie对象).
我敢肯定,我不是第一个必须处理HTTPLIB和Cookie的人.任何人
有建议或指针?
J

# 回答1


在14 DIC,23:44,Joshua Kugler 如何纠正第一件事,使Urllib2支持头/put/
删除?
导入urllib2
类请求(urllib2.Request):
def __init __(self,url,data = none,headers = {},
Origin_req_host = none,Unverifiable = false,
方法=无):
urllib2.request .__ init __(self,url,数据,标头,
Origin_req_host,无法验证)
self.method =方法
def get_method(self):
如果self.method无:
如果self.data不是没有:
返回"邮政"
别的:
返回"获取"
返回self.method
pyf = urllib2.urlopen(请求(" http://www.python.org/",
方法=" head")))
pyprint f.info()
日期:2007年12月16日太阳00:03:43格林尼治标准时间
服务器:Apache/2.2.3(Debian)DAV/2 SVN/1.4.2 MOD_SSL/2.2.3 OPENSSL/
0.9.8c
最后修饰:2007年12月15日星期六16:25:58格林尼治标准时间
ETAG:" 60193-3E6A-A24FB180"
接受范围:字节
内容长度:15978
连接:关闭
内容类型:文本/html
Pyprint Len(F.Read())
0
笔记:
a)代替urlopen(url,...),您必须使用urlopen(请求(url,...))
b)在httpredirecthandler中未正确处理重定向(
请求方法应复制)
c)我没有验证put /删除方法
d)稍后我会尝试做一个适当的补丁
- -
Gabriel Genellina
# 回答2


Gabriel Genellina写道:
如何纠正第一件事,使Urllib2支持头/put/
删除?

我们可能必须这样做,然后在重定向处理程序上入侵,这样它将
正确保留请求方法.但这不是我们的偏爱,因为
明显的原因. :)
我只是发现很难相信没有人需要做cookie
以通用方式处理(即输入:set-cookie标头,输出:cookie
对象).可能必须写我的.或Sublcass/扩展Cookielib.
J

标签: python

添加新评论