出于某种原因,HTTP Error 403: Forbidden当我尝试打开页面时,我得到了一个http://questionablecontent.net.我曾经得到一个robots.txt错误,但这已经解决了.另外,我甚至找不到他们的robots.txt文件.
我仍然可以从chrome查看网页,所以我想知道的是:即使设置了合适的标题后,机械化看起来与chrome有什么不同吗?
这是我的代码(不起作用):
br = mechanize.Browser()
cj = cookielib.LWPCookieJar()
br.set_cookiejar(cj)
br.set_handle_equiv(True)
br.set_handle_redirect(True)
br.set_handle_robots(False)
br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1)
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]
Run Code Online (Sandbox Code Playgroud)
我也尝试将addheaders设置为与我的浏览器相同的标题(我在这里找到):
br.addheaders = [('User-agent','Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36')]
Run Code Online (Sandbox Code Playgroud)
......但那也没有用.
最后,我尝试使用Selenium并且工作正常,因为它在chrome中加载页面然后与Python通信.但是,我仍然想让它与机械化一起工作.此外,我仍然不确定chrome和机械化与他们的服务器有何不同.