0

嗨,我已经使用 Python 和正则表达式成功抓取了几个购物网站的所有页面。但是现在我很难抓取特定网站的所有页面,其中下一页后续链接在当前页面中不存在,例如这里http://www.jabong.com/men/clothing/mens-jeans/

该网站正在通过 Ajax 调用动态加载同一页面中的下一页数据。因此,在抓取时,我只能抓取第一页的数据。但我需要抓取该网站所有页面中存在的所有项目。

我无法获取此类网站的所有页面的源代码,其中下一页的后续链接在当前页面中不可用。请帮我解决这个问题。

4

1 回答 1

0

当用户向下滚动时,该站点似乎正在使用 AJAX 请求来获取更多搜索结果。初始搜索结果集可以在主请求中找到:

http://www.jabong.com/men/clothing/mens-jeans/

当用户向下滚动时,页面会检测到他们何时到达当前结果集的末尾,并根据需要加载下一个结果集:

http://www.jabong.com/men/clothing/mens-jeans/?page=2

一种方法是简单地继续请求后续页面,直到找到没有结果的页面。

顺便说一句,我可以通过使用 screen-scraper 中的代理工具来确定这一点。您还可以使用 Charles 或 HttpFox 之类的工具。他们的关键是浏览站点并观察发出的 HTTP 请求,以便您可以在代码中模仿它们。

于 2013-05-31T20:06:06.833 回答