使用 URL PHP 抓取亚马逊产品数据 [重复]
Posted
技术标签:
【中文标题】使用 URL PHP 抓取亚马逊产品数据 [重复]【英文标题】:Amazon Product data scrape with URL PHP [duplicate] 【发布时间】:2018-12-15 20:30:24 【问题描述】:我想使用 PHP 来抓取产品的信息,例如描述、标题、价格、数量等,使用亚马逊网站中产品的 url 或使用在 ISBN 上的使用。 我该怎么做?有适合我的代码示例吗? 谢谢!
【问题讨论】:
所有这些数据都可以通过官方Amazon Product Advertising API获取。亚马逊明确禁止网络抓取。 【参考方案1】:使用 php,您可以通过使用 file_get_contents() 打开网址并使用带有正则表达式的 preg_match() 来完成工作。
然后,随机取一个文章页面,浏览其html代码,例如https://www.amazon.com/Learning-PHP-mysql-javascript-jQuery/dp/1491978910/
通过检查代码,我们可以看到价格在特定的<span>
:
<span class="a-size-medium a-color-price header-price">
$35.00
</span>
然后我们可以这样做:
$link = 'https://www.amazon.com/Learning-PHP-MySQL-JavaScript-jQuery/dp/1491978910/';
$page_content = file_get_contents($link);
if(preg_match('/<span class=\"a-size-medium a-color-price header-price\">(.*?)<\/span>/i',
$page_content, $matches))
$price = trim($matches[1]);
else
echo "Price not found.";
$price = 0;
那么你在这里有足够的基础来重复操作来获取你需要获取的所有其他信息。
请注意,这不是最好的相关方法,因为它假定 HTML 模式在一篇文章到另一篇文章中总是相同的。最好的相关方法是尽可能使用他们的 API。
【讨论】:
这不再起作用并导致机器人检查。以上是关于使用 URL PHP 抓取亚马逊产品数据 [重复]的主要内容,如果未能解决你的问题,请参考以下文章