我要提交的网站代码::: FORM PART OF WEBSIDE CODE
当我尝试选择表单时出现错误
Traceback (most recent call last):
File "call.py", line 35, in <module>
loginAccount()
File "call.py", line 15, in loginAccount
browser.select_form(nr = 0)
File "/usr/lib/python2.7/dist-packages/mechanize/_mechanize.py", line 499, in select_form
global_form = self._factory.global_form
File "/usr/lib/python2.7/dist-packages/mechanize/_html.py", line 544, in __getattr__
self.forms()
File "/usr/lib/python2.7/dist-packages/mechanize/_html.py", line 557, in forms
self._forms_factory.forms())
File "/usr/lib/python2.7/dist-packages/mechanize/_html.py", line 237, in forms
_urlunparse=_rfc3986.urlunsplit,
File "/usr/lib/python2.7/dist-packages/mechanize/_form.py", line 844, in ParseResponseEx
_urlunparse=_urlunparse,
File "/usr/lib/python2.7/dist-packages/mechanize/_form.py", line 981, in _ParseFileEx
fp.feed(data)
File "/usr/lib/python2.7/dist-packages/mechanize/_form.py", line 760, in feed
raise ParseError(exc)
mechanize._form.ParseError: expected name token at '<!\\\\])/g,"\\\\$1").rep'
源代码(我在这里写了#ERROR OCCUR的评论):
browser = mechanize.Browser()
browser.set_handle_robots(False)
browser.set_handle_refresh(False)
browser.open("https://accounts.google.com/ServiceLoginAuth")
browser.select_form(nr = 0)
browser.form['Email'] = "MYMAIL@gmail.com"
browser.form['Passwd'] = "MYPASWORD"
browser.submit() # Till the here, works fine. I can login.
resp = browser.open("https://accounts.google.com/b/0/SmsAuthSettings?Setup=1")
resp = resp.read()
browser.select_form(nr = 0) # ERROR OCCUR HERE
当我删除browser.select_form(nr = 0)时,程序运行正常。 我该怎么办?
答案 0 :(得分:3)
使用更强大的解析器, 例如 browser = mechanize.Browser(factory = mechanize.RobustFactory())
查看此链接以获取更多帮助: http://www.thecodingforums.com/threads/mechanize-select_form-issue.359575/