当 url 没有改变时,网页抓取

Posted

技术标签:

【中文标题】当 url 没有改变时,网页抓取【英文标题】:Web scraping when url doesnt change 【发布时间】:2019-12-31 04:40:15 【问题描述】:

我正在为这样一个亚马逊的个人资料卖家进行网络抓取:https://www.amazon.es/sp?_encoding=UTF8&asin=B07KS22WVT&isAmazonFulfilled=1&isCBA=&marketplaceID=A1RKKUPIHCS9HS&orderID=&seller=A1KD8FXP0BE5W2&tab=&vasStoreID=

我正在使用 php 和 Goutte。问题是,在评论部分,当我点击“Siguiente”(下一步)时,url 没有改变,我无法 scrape 下一个 cmets。

我看到 Goutte 支持“点击链接”问题。我试过了:

$link = $crawler->selectLink('Siguiente')->link();
$crawler = $client->click($link);

但它不起作用。有没有其他解决办法?

【问题讨论】:

【参考方案1】:

Goutte 只能加载在服务器端呈现的页面(例如使用 php)。在没有新页面加载的情况下更改的任何内容都可能使用不支持的 javascript 完成。你可以看看this question。使用 phantomjs 之类的东西来爬取页面可能会更好,因为很多页面都依赖于 javascript。

【讨论】:

以上是关于当 url 没有改变时,网页抓取的主要内容,如果未能解决你的问题,请参考以下文章

如何利用java中url实现网页内容的抓取

如何用python抓取这个网页的内容?

我没有得到所有的结果。使用 Selenium 和 Python 进行网页抓取

Python 3.6 Beautiful Soup - 在网页抓取期间无法获取嵌入式视频 URL

queryList 一次抓取多个网页内容的方法--目前只有用循环 替换页码或者给出url循环进行 queryList没有像python一样的yied迭代方法 queryList 实现多个实例抓取

使用 Node.js 进行网页抓取