如何通过卷曲操作获得无限查询?

时间:2011-08-31 07:08:48

标签: curl

我正在尝试使用来自其他网站的CURL函数获取数据,例如谷歌反向链接,雅虎索引页面,whois信息等。但是在5-10次查询后,我的IP或我的服务器IP被阻止,并且它没有显示任何值。这是我正在使用的Curl函数:

function getPage ($url) {
if (function_exists("curl_init")) {
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
return curl_exec($ch);
curl_close($ch); 
} else {
return file_get_contents($url);
}
}

帮助我从Google,Yahoo和sowm whois网站获得无限制的查询。这段代码出了什么问题?

1 个答案:

答案 0 :(得分:1)

我认为你必须使用YQL!

实例 http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/

http://www.brighthub.com/hubfolio/matthew-casperson/articles/54673.aspx

UPD

只需查看源代码https://github.com/jamespadolsey/jQuery-Plugins/blob/master/cross-domain-ajax/jquery.xdomainajax.js

还有webconsole,您可以在其中测试任何查询 - 让我们下载当前页面=)

http://developer.yahoo.com/yql/console/?q=select%20*%20from%20html%20where%20url%3D%22http%3A%2F%2Ffinance.yahoo.com%2Fq%3Fs%3Dyhoo%22#h=select%20%20*%20from%20html%20where%20url%3D%22http%3A//stackoverflow.com/questions/7253665/file-get-contents-unlimited-queries-how-to/7268078%23comment-8764764%22

使用php http://developer.yahoo.com/yql/guide/yql-code-examples.html#yql_php

的代码示例

但仔细阅读文档 - 没有什么是完美的,YQL有局限性