【发布时间】:2020-03-05 14:14:02
【问题描述】:
我正在用 Ruby 编写一个网页抓取脚本,它会打开一个二手车网站,搜索汽车的品牌/型号,遍历结果页面,然后抓取每个页面上的数据。
我遇到的问题是我不一定知道一开始的最大页面数,只有当我迭代接近最后几个已知页面时,分页才会增加并显示更多页面。
我已将cleanpages 定义为一个数组,并用我所知道的首次打开网站时可用的页面填充它。然后我使用cleanpages.each do 来遍历那些“页面”。每次我在新页面上时,我都会将所有已知页面添加回cleanpages,然后运行cleanpages.uniq 以删除重复项。问题似乎在于cleanpages.each do 只迭代了其原始长度的次数。
我可以让它在each do 循环中增加它的迭代次数吗?
【问题讨论】:
-
您是否有任何代码可以添加到您已经尝试过的问题中?见stackoverflow.com/help/how-to-ask
-
您遇到问题的代码是什么?你的代码有什么问题?您收到错误消息吗?错误信息是什么?你得到的结果不是你期望的结果吗?你期望什么结果,为什么,你得到的结果是什么,两者有什么不同?您正在观察的行为不是期望的行为吗?期望的行为是什么,为什么,观察到的行为是什么,它们有何不同?请提供minimal reproducible example。