首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用curl从其他网站检索数据

如何使用curl从其他网站检索数据
EN

Stack Overflow用户
提问于 2018-06-08 15:27:23
回答 1查看 1.1K关注 0票数 -1

您好,如何使用curl和php从其他网站搜索数据。我想从这个网站https://www.example.com/xxx上搜索imei号码

这就是我到目前为止所尝试的

代码语言:javascript
复制
$imei = '013887009861498';

$cookie_file_path = "cookies/cookiejar.txt"; 
$fp = fopen("$cookie_file_path","w") or die("<BR><B>Unable to open cookie file $mycookiefile for write!<BR>");
fclose($fp); 


    $url="https://example.com/xxx"; 
    $agent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)";
        $ch = curl_init(); 
        curl_setopt($ch, CURLOPT_URL,$url);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS,$imei);
        curl_setopt($ch, CURLOPT_USERAGENT, $agent);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file_path);
        curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file_path);
        $result = curl_exec ($ch);

        echo $result ;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-09 03:37:57

(这不是一个完整的答案,但太长了,无法作为评论。我不想为你弄清楚所有的小细节)

这里有几个不同的问题,第一个是如何用php/curl做一个POST请求,你可以找到一个示例here

另一个问题是如何在PHP中解析HTML,其中有几个选项列出了here。(我强烈推荐DOMDocument & DOMXPath组合)

另一个问题是,在PHP中如何克服验证码的挑战,1解决方案是使用deathbycaptcha API (顺便说一下,这是一个付费服务),你可以找到一个here的例子。

另一个问题是,他们使用了3个不同的类似CSRF的令牌,分别称为__VIEWSTATE__EVENTVALIDATIONhdnCaptchaInstance,所有这些令牌都必须被解析出来并与验证码一起提交。此外,您还需要处理cookie,因为CSRF令牌和验证码与您的cookie会话绑定(幸运的是,您可以让curl使用CURLOPT_COOKIEFILE自动处理cookie)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50755508

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档