Пытаюсь сделать функциональность в WordPress которая бы парсила по URL определенное ревью с Amazon и потом добавляла его ко мне на сайт. Не могу спарсить. Обычно я делаю такие задачи с помощью Python, но тут WordPress, а значит у меня только PHP и JavaScript.
Для PHP я использую curl.
$url = "https://www.amazon.com/review/[coment-ID]";
$curl = curl_init($url);
$headers = [
'X-Apple-Tz: 0',
'X-Apple-Store-Front: 143444,12',
'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Encoding: gzip, deflate',
'Accept-Language: en-US,en;q=0.5',
'Cache-Control: no-cache',
'Content-Type: application/x-www-form-urlencoded; charset=utf-8',
'Host: https://www.amazon.com/review/[comment-ID]',
'Referer: [my-webpage]',
'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:28.0) Gecko/20100101 Firefox/28.0',
'X-MicrosoftAjax: Delta=true'
];
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
$output = curl_exec($curl);
curl_close($curl);
но когда я пытаюсь распарсить ответ, я вижу что в ответе:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The request could not be satisfied</TITLE>
</HEAD><BODY>
<H1>ERROR</H1>
<H2>The request could not be satisfied.</H2>
<HR noshade size="1px">
Bad request.
<BR clear="all">
<HR noshade size="1px">
<PRE>
Generated by cloudfront (CloudFront)
Request ID: eqzLZQaioGyAW31EYWTmHA9vG_OES6xJ6GDJanQnBkhaby98C_vebQ==
</PRE>
<ADDRESS>
</ADDRESS>
</BODY></HTML>
Без заголовков к запросу Amazon сразу видит во мне бота и ничего не отдает. Не получается в общем.
Чтобы пытаться парсить на JS я использую ygrab. Тут так же не выходит.
var data = {
url: 'https://www.amazon.com/gp/customer-reviews/R3TGVQRYYN46TR/',
selector: 'div.a-fixed-right-grid-inner',
loop: true,
result: {
customer_name: {
find: 'a.author"',
grab: {
name: 'text',
value: ''
},
}
}
}
var result = ygrab(data);
У Amazon конечно есть API, но по заявлениям на SO, он возвращает вообще не то.
Как посоветуете стягивать Review?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Что Вы используете для программирования QT c++? Используете вместо QT Creator Visual Studio? И если да-то как всё настроить- дополнение и что там ещё надо...
Нужно в цикле читать слово из файлаЦикл должен работать до тех пор, пока в файле есть строки
Ребят, пытаюсь разобраться с библиотекой boostНужны большие числа