我在抓取URL时遇到问题,如果我使用Chrome的开发工具,则可以看到URL并预览内容,但是如果我打算从浏览器中打开URL,则找不到404。
这是带有AJAX数据的URL。我需要比较赔率: http://www.betexplorer.com/soccer/england/premier-league/wolves-manchester-city/Kz6hM15m/ 这是一个AJAX数据网址: www.betexplorer.com/gres/ajax/matchodds.php?p=0&e=Kz6hM15m&b=1x2该URL返回404在浏览器中找不到,但在节日URL中显示赔率。 是否可以从secondo网址获取数据?
谢谢。
答案 0 :(得分:0)
快速检查您在问题中提到的网站后,我发现它在处理请求时正在检查引荐来源网址和用户代理。
添加带有值“ http://www.betexplorer.com/”的标头“ Referer”和一个随机的“浏览器状”用户代理,将产生具有所需赔率的json响应:)
例如:
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.betexplorer.com/gres/ajax/matchodds.php?p=0&e=Kz6hM15m&b=1x2");
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.12011-10-16 20:23:00");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_REFERER, "http://www.betexplorer.com/");
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
$output = curl_exec($ch);
curl_close($ch);