如何以及使用哪个python库可以使用用户:密码或令牌制作httprequest(https)?
基本上相当于curl -u user:pwd https://www.mysite.com/
谢谢
答案 0 :(得分:4)
使用python请求:Http for Humans
import requests
requests.get("https://www.mysite.com/", auth=('username','pwd'))
你也可以使用digest auth ...
答案 1 :(得分:1)
如果您需要发出线程安全请求,请使用pycurl
(python接口来卷曲):
import pycurl
from StringIO import StringIO
response_buffer = StringIO()
curl = pycurl.Curl()
curl.setopt(curl.URL, "https://www.yoursite.com/")
# Setup the base HTTP Authentication.
curl.setopt(curl.USERPWD, '%s:%s' % ('youruser', 'yourpassword'))
curl.setopt(curl.WRITEFUNCTION, response_buffer.write)
curl.perform()
curl.close()
response_value = response_buffer.getvalue()
否则,请使用urllib2
(请参阅其他回复以获取更多信息),因为它内置且界面更清晰。
答案 2 :(得分:0)
class urllib2.HTTPSHandler 用于处理HTTPS URL打开的类。
21.6.7。 HTTPPasswordMgr对象 HTTPPasswordMgr和HTTPPasswordMgrWithDefaultRealm对象提供了这些方法。
HTTPPasswordMgr.add_password(领域,uri,用户,密码) uri可以是单个URI,也可以是URI序列。领域,用户和密码必须是字符串。这会导致(user,passwd)在对域的身份验证和任何给定URI的超级URI进行身份验证时用作身份验证令牌。 HTTPPasswordMgr.find_user_password(领域,authuri) 获取给定领域和URI的用户/密码(如果有)。如果没有匹配的用户/密码,此方法将返回(None,None)。
对于HTTPPasswordMgrWithDefaultRealm对象,如果给定领域没有匹配的用户/密码,则将搜索领域None。
答案 3 :(得分:0)
查看我们的urllib2
。底部的例子可能会引起人们的兴趣。