如果我将Firefox指向http://bitbucket.org/tortoisehg/stable/wiki/Home/ReleaseNotes,则会得到HTML页面。但是,如果我在Python中尝试这样做:
导入urllib
site ='http://bitbucket.org/tortoisehg/stable/wiki/Home/ReleaseNotes'
req = urllib.urlopen(网站)
文字= req.read()
我得到以下内容:
500内部服务器错误
服务器遇到内部错误或配置错误,无法完成您的请求。
我究竟做错了什么?
最佳答案
您没有做错任何事,bitbucket进行了一些用户代理检测(例如,检测商业客户端)。只是changing the user agent对其进行了修复(如果它没有urllib
作为子字符串)。
您应该为此填写一个问题:http://bitbucket.org/jespern/bitbucket/issues/new/
关于python - Python urllib.urlopen()调用不适用于浏览器接受的URL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1335439/