В настоящее время мой способ получения отзывов клиентов Amazon по ссылкам на отзывы заключается в использовании
Предоставляя ссылку на обзор, я могу получить содержимое обзора, например
Заголовок, Рейтинги Комментарии, Описание, Изображения, Видео, Автор и т. Д.
Это все возможно, если я знаю css селектор для каждого содержимого.
Чтобы показать вам пример, как я это делаю:
$url = 'REVIEW_URL_HERE';
$html = file_get_html($url,false); //see PHP Simple HTML DOM Parser
$testSelector='#SAMPLE-SELECTOR';
$content = $html->find($testSelector, 0)->plaintext;
//echo $content; //error-> seems selector is not present.
echo $html; // i expect the review link page will be loaded. but the loaded page is different
Выход был неожиданным. так как я echo $html
Я ожидаю страницу обзора. но была показана другая страница:
Похоже, что метод, который я использую для получения содержимого обзора, больше невозможен. Есть идеи для нового метода?
Я нашел AWS в отношении получения Обзоров … но AFAIK это не возвращает содержание обзора … это только возвращает Ссылки Обзора ..
Конечно, но вы должны быть разработчиком Amazon и использовать их API. Ознакомьтесь с документацией Вот.
Вы видите это сообщение, потому что вы, возможно, неоднократно звонили в amazon apis. В этом случае Amazon блокирует IP-адрес. Смените интернет-провайдера, он должен начать работать.
Возможно, вам нужно использовать php и PhantomJs плюс простой Javascript.
И не забывайте: используйте прокси
Некоторым нравится это:
<?php
$html = exec("phantomjs --proxy=127.0.0.1:80 --proxy-auth=root:master
test.js http://httpbin.org/ip");
?>
test.js
var args = require('system').args;
var webPage = require('webpage');
var address = args[1];
var page = webPage.create();
var fs = require('fs');
var pageResponses = {};
page.settings.userAgent = 'Mozilla/5.0 (Windows NT 10.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36';
page.settings.javascriptEnabled = true;
page.settings.loadImages = false;
phantom.cookiesEnabled = false;
phantom.javascriptEnabled = true;
page.settings.resourceTimeout = 20000;
page.customHeaders = { // use correct header
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
"Accept-Language": "en-US,en;q=0.5",
"Connection": "keep-alive",
};
page.viewportSize = { width: 1024, height: 768 };
try {
page.open(address, function (status) {
console.log(page.content);
window.setTimeout(function () {
phantom.exit();
}, Math.random()*500 + 1500);
});
} catch(e) {
phantom.exit(1);
}