چطور میتونم با php توی لیندکین سرچ کنم؟
https://lamtakam.com/qanda/3138/چطور-میتونم-با-php-توی-لیندکین-سرچ-کنم؟ 1من یک کد php دارم که با اون میتونم یک درخواست ارسال کنم و نتیجش رو بگیرم: (که به درستی کار میکنه، هم هدر های مورد نیاز رو میشه توش ست کرد و هم متد ارسال رو و ..)
$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);
الان میخوام نتیجه صفحه سرچ لینکدین رو با همین روش باز کنم و خروجیش رو بگیرم. این اون صفحه ای هست که میخوام این حرکت رو روش بزنم. اگه F12 بزنید میبینید که توی این صفحه یک درخواست ایجکسی ارسال میشه و دیتای جستجو شده رو بر میگردونه. مثلا اگه بخوایم Peter
رو سرچ کنیم، یک همچین درخواستی ارسال میشه:
https://www.linkedin.com/voyager/api/typeahead/hits?q=blended&query=Peter
وقتی شما با مرورگر آدرس بالا رو باز میکنید، براتون باز نمیشه و این ارور رو دریافت میکنید:
این ارور به این معنی هست که یک کد (اصطلاحان token) باید همراه با این درخواست ارسال بشه. که توی درخواست خود لینکدین اون کد این هست:
سوال من اینه که، این کد چطوری ساخته میشه؟ طبیعتا باید از محتویات خود صفحه سرچ ساخته بشه دیگه، چون از سمت کلاینت داره شروع میشه. مشکل اینجاست که توی DOM موجود نیست این کد و احتمالا با JS داره ساخته میشه و ارسال میشه. در کل کسی سرنخی داره که چطوری میتونم این کد رو بسازم که به همراه درخواست هام ارسال کنم؟!