我目前正在使用这本整洁的书中的 mechanize 测试用于 Python 程序化网页浏览的脚本,并且遇到了一个我似乎无法修复的错误。基本上,我有以下脚本:
#!/usr/bin/env python
from bs4 import BeautifulSoup, SoupStrainer
from mechanize import Browser
br = Browser()
#home page
rsp = br.open('http://us.pycon.org/2011/home/')
print '\n***', rsp.geturl()
page = rsp.read()
assert 'Log in' in page, 'Log in not in page'
rsp = br.follow_link(text_regex='Log in')
#login page
print '\n***', rsp.geturl()
print 'Confirm at least a login form; submit invalid creds'
assert len(list(br.forms())) > 1, 'no forms on this page'
br.select_form(nr=0)
br.form['username'] = 'xasdxx' #wrong login on purpose
br.form['password'] = 'xxasdfx' #wrong password on purpose
rsp = br.submit()
#login page with error
print '\n***', rsp.geturl()
该脚本与书中的脚本相同。每次我运行它时,我都会收到以下错误:
我也在这里查看了这篇文章,但那里似乎没有解决方案......
编辑:我发现更多有类似问题但没有具体解决方案的帖子。
帮助将不胜感激!
谢谢!
~艾沃里克
解决方案:如 Foo Bar 下面的回答所示,我的 IP 被阻止,因此不允许我在网站上做任何事情。然后我调整了脚本以在https://www.rememberthemilk.com上运行,一切正常: