如何通过PHP搜索Linkedin?

时间:2017-06-11 09:48:24

标签: javascript php security curl

我有一个PHP脚本,可以使用CURL打开http请求:(如果需要,它也会接受标题)



   $c = curl_init();
curl_setopt($c, CURLOPT_URL, $url);
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
if ($post_paramtrs) {
    curl_setopt($c, CURLOPT_POST, TRUE);
    curl_setopt($c, CURLOPT_POSTFIELDS, "var1=bla&" . $post_paramtrs);
}
curl_setopt($c, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($c, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:33.0) Gecko/20100101 Firefox/33.0");
curl_setopt($c, CURLOPT_COOKIEJAR, $dirname . 'cookief.txt');
curl_setopt($c, CURLOPT_COOKIEFILE, $dirname . 'cookief.txt');
curl_setopt($c, CURLOPT_MAXREDIRS, 10);
$follow_allowed = (ini_get('open_basedir') || ini_get('safe_mode')) ? false : true;
if ($follow_allowed) {
    curl_setopt($c, CURLOPT_FOLLOWLOCATION, 1);
}
curl_setopt($c, CURLOPT_CONNECTTIMEOUT, 9);
curl_setopt($c, CURLOPT_REFERER, $url);
curl_setopt($c, CURLOPT_TIMEOUT, 60);
curl_setopt($c, CURLOPT_AUTOREFERER, true);
curl_setopt($c, CURLOPT_ENCODING, 'gzip,deflate');
$data = curl_exec($c);
$status = curl_getinfo($c);
curl_close($c);




它也有效。现在,我想获得linkedin搜索的结果。 Here是您可以搜索的页面。如您所见,它发送ajax请求以获取数据。例如,如果您要搜索Peter,则会发送此请求:

https://www.linkedin.com/voyager/api/typeahead/hits?q=blended&query=Peter

但是当您手动打开它时,它会失败并抛出此错误:

  

CSRF检查失败。

这意味着我必须在请求中传递此令牌:

enter image description here

我的问题是什么?我如何找到该令牌?注意到它并不存在于DOM中。它会由JS创建吗?无论如何,你有什么线索吗?

0 个答案:

没有答案