我想访问带有urllib2的网页,并且我一直收到HTTP错误401:未经授权。
现在,我的问题是,在使用像Firefox这样的浏览器时,此页面不需要任何身份验证。只有当我使用谷歌浏览器时,才会弹出身份验证对话框。虽然只有在页面完全加载后才会发生这种情况。所以我可以取消身份验证并正常使用该页面。
有没有人知道如何在没有身份验证的情况下打开此网页。非常感谢你!
P.S。页面网址为:http://61.19.248.15/ $ sitepreview / sampran.go.th /
答案 0 :(得分:1)
这是有关身份验证的最佳文章之一。
http://www.voidspace.org.uk/python/articles/authentication.shtml
答案 1 :(得分:0)
如果Web服务器想要返回401状态而不是返回网页,则无论如何客户端都无法获取内容。相反,您必须说服服务器为该页面提供服务。也许它期待您已经在Firefox中保存的身份验证凭据。也许它想在你的http请求中看到Firefox的User-Agent标头。如果您无法猜测或询问服务器管理员,您可以尝试使用Wireshark来嗅探成功会话的网络会话,并将其与不成功会话的网络会话进行比较。
答案 2 :(得分:0)
我绕过这些错误:
def append_text(string,n):
i=1
while i<n:
i = i+1
url = string + str(i)
try:
f = urllib.urlopen(url)
s = f.read()
...
except IOError, e:
if hasattr(e, 'code'):
print 'We got an error'
print e.code