解析RSS feed URL在浏览器和CURL中没有返回任何结果,但是在RSS feed阅读器中返回了正确的结果

时间:2019-05-15 08:35:05

标签: php rss atom-feed php-curl

我正在尝试为Kijiji RSS feed解析器。我遇到的问题是由于某种原因,他们的RSS URL在浏览器或使用CURL的脚本中未返回任何结果。但是,如果我使用适当的RSS阅读器来解析URL,那么它可以正常工作。

以下是示例URL https://www.kijiji.ca/rss-poa/u1001906046,它应以RSS feed https://www.kijiji.ca/o-tork-parts/1001906046的形式返回以下返回值。问题是,当我在浏览器中加载RSS URL时,它不返回任何广告列表。当我在https://codebeautify.org/rssviewer加载RSS URL时,我会看到所有结果。

我最初的想法是必须传递正确的AcceptUser-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;

我在做什么错了?

0 个答案:

没有答案