Я пытаюсь сделать парсер для Kijiji RSS-канала. У меня проблема в том, что по какой-то причине их URL-адрес RSS не возвращает результатов в браузере или в моем скрипте с использованием CURL. Однако, если я проанализирую URL с помощью правильного RSS Reader, он будет работать отлично.
Вот пример URL-адреса https://www.kijiji.ca/rss-poa/u1001906046
Он должен возвращать следующие результаты в виде RSS-канала https://www.kijiji.ca/o-tork-parts/1001906046
. Проблема в том, что когда я загружаю URL-адрес RSS в браузер, он не возвращает списки объявлений. Когда я загружаю RSS-адрес в https://codebeautify.org/rssviewer
, я вижу все результаты.
Моя первоначальная мысль, что я должен передать правильные заголовки Accept
и User-Agent
. Я создал свою собственную страницу RSS, чтобы выяснить, какие заголовки Code Beautify
проходит. Я получил Accept: */*
и пустой пользовательский агент. Я использовал это с моим кодом, но все еще получал ту же страницу без списков.
Мой код выглядит так
$url = "https://www.kijiji.ca/rss-poa/u1001906046";
$headers = array(
'Accept: */*',
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_USERAGENT,'');
$result = curl_exec($ch);
curl_close($ch);
echo $result;
Что я делаю не так?