Python Mechanize中出现错误-“;mechanize.“U mechanize.BrowserStateError:不查看HTML”;

Python Mechanize中出现错误-“;mechanize.“U mechanize.BrowserStateError:不查看HTML”;,python,mechanize,Python,Mechanize,这是我的密码。基本上,它从特定页面中提取页面链接[第1、2、3、4、5页的链接…]和数据链接。然后,它进入每个数据链接并提取一些数据,完成后,它会移动到下一页。但我总是犯这样的错误: for link in br.links(url_regex="inquiry-results.jsp"): cb[link.url] = link for page_link in cb.values(): for link in br.links(url_regex

这是我的密码。基本上,它从特定页面中提取页面链接[第1、2、3、4、5页的链接…]和数据链接。然后,它进入每个数据链接并提取一些数据,完成后,它会移动到下一页。但我总是犯这样的错误:

for link in br.links(url_regex="inquiry-results.jsp"):
    cb[link.url] = link

for page_link in cb.values():               
   for link in br.links(url_regex="inquiryDetail.jis"): 
            ....................
      url = link.absolute_url
      br.follow_link(link)
            ......................
   br.follow_link(page_link)
回溯(最近一次呼叫最后一次):
文件“C:\python27\test.py”,第95行,在
对于br.links(url_regex=“inquiryDetail.jis”)中的链接:
链接中第405行的文件“build\bdist.win32\egg\mechanize\\u mechanize.py”
mechanize.\u mechanize.BrowserStateError:不查看HTML

有人能帮忙吗?

这似乎与检查响应是否有效有关:


也许您得到的响应是XHTML,或者具有无效的标题?可能有某种方法可以覆盖
is_html
属性(like)。

多亏了loevborg发布的链接,我一直在使用:

Traceback (most recent call last):
  File "C:\python27\test.py", line 95, in <module>
    for link in br.links(url_regex="inquiryDetail.jis"):
  File "build\bdist.win32\egg\mechanize\_mechanize.py", line 405, in links
mechanize._mechanize.BrowserStateError: not viewing HTML

现在
br.查看\u html()
将评估为真

在br.open之前将您的应用程序作为浏览器介绍可能有助于:

br.open('http://example.com')
br._factory.is_html = True

有人发现这个斜纹功能是如何转化为机械化的吗?
br.addheaders = [('User-agent','Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/45.0.2454101')]