当 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 没有改变时,网页抓取的主要内容,如果未能解决你的问题,请参考以下文章
我没有得到所有的结果。使用 Selenium 和 Python 进行网页抓取
Python 3.6 Beautiful Soup - 在网页抓取期间无法获取嵌入式视频 URL
queryList 一次抓取多个网页内容的方法--目前只有用循环 替换页码或者给出url循环进行 queryList没有像python一样的yied迭代方法 queryList 实现多个实例抓取