mechanize 打开多个页面

2 投票
1 回答
1323 浏览
提问于 2025-04-16 12:58

我正在使用mechanize和beautifulsoup来创建一个Python脚本,从网页上提取一些数据。抓取的过程没问题,但我遇到的麻烦是如何在多个页面之间移动。有没有办法在mechanize中用循环来切换页面呢?

这是我尝试过的代码:

Browser().follow_link(text_regex="Next")

这个代码能让程序跳到下一页,这没问题,但如果“下一页”按钮不存在,程序就会出错。我不太确定怎么才能写一个更好的循环,或者在执行上面的跟随链接命令之前,先检查一下这个链接是否存在。

我找到的大部分例子和文档似乎只适用于单个页面。

1 个回答

1

你的代码是怎么“就死掉”的呢?如果它抛出了一个异常,你可以捕捉到这个异常,然后在循环里做一些处理,让它好好地运行下去:

try:
   Browser.follow_link(text_regex="Next")
except Exception:
   print "No more next button; terminating loop (but not dying mysteriously)"
   break

撰写回答