使用Mechanize follow_link()找不到链接

时间:2012-02-08 22:59:11

标签: mechanize-python

我刚刚开始查看Mechanize的Python版本。我从http://wwwsearch.sourceforge.net/mechanize/的第一个例子中获取了大部分代码。这个模块的文档非常稀疏,我不知道如何调试它。

我正在尝试查找并按照文章“职业”的第一个链接。当我运行这个时,我收到此错误“mechanize._mechanize.LinkNotFoundError”。谁能告诉我我做错了什么?

import re
import mechanize

br = mechanize.Browser(factory=mechanize.RobustFactory())
br.open("http://www.amazon.com/")

response1 = br.follow_link(text_regex=r"Careers", nr=1)
assert br.viewing_html()
print br.title()

1 个答案:

答案 0 :(得分:1)

我自己尝试了示例代码,看起来问题与nr参数有关。它没有在任何地方记录,但在源代码中(比文档更具信息性!),它声明:

  

nr:匹配与所有其他条件匹配的第n个链接(默认为0)

因为nr参数是从0开始的,当你给出参数1时,它正在寻找第二次提到职业,这显然没什么。

因为它默认为0,或者找到第一个链接,所以你可以将nr参数设置为0,或者将其完全保留。