卷曲不适用于我的连接的linkedin个人资料

vic*_*cky 2 php dom linkedin web-scraping

我想要来自linkedin的朋友的电子邮件ID.直到现在我得到了我的网站请求网址的网址.这就像https://www.linkedin.com/profile/view?id=xxx&authType=name&authToken=xxx&trk=api*a4152951*s4217191*

(Linkedin API IN.API.Connections("me").result(function(me){})

从这个网址我必须得到电子邮件地址.所以我使用curl.这是我的代码:

$ch = curl_init("https://www.linkedin.com/profile/view?id=259116153&authType=name&authToken=S9sN&trk=api*a4152951*s4217191*");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true );
$rr = curl_exec($ch);
//curl_close($ch);
echo $rr;
Run Code Online (Sandbox Code Playgroud)

我也试过这个但没有用(空白页):

$url = $_POST['links'];

$contents = file_get_contents($url);

$dom = new DOMDocument();

@$dom->loadHTML($contents);

$dom->preserveWhiteSpace = false;

$xpath = new DOMXPath($dom);

$hrefs = $xpath->query("//li[@id='contact-field']");

for ($i = 0; $i < $hrefs->length; $i++)
  echo $hrefs->item($i)->nodeValue;

if(!$hrefs) echo 'Not found';
echo $hrefs->nodeValue;
Run Code Online (Sandbox Code Playgroud)

还有一件事,如果把这个网址放在浏览器中,我可以通过点击显示:block(CSS)的conatct info按钮看到电子邮件.

小智 6

我们的使用条款明确禁止从LinkedIn抓取数据.检索数据的正确方法是通过REST API调用.

请求LinkedIn成员的电子邮件地址要求您的应用程序请求一个名为r_emailaddress的特殊OAuth权限

确保您的应用程序配置为请求该权限,然后使用以下REST API调用来检索成员的电子邮件地址:

https://api.linkedin.com/v1/people/id={targetMemberID}:(email-address)
Run Code Online (Sandbox Code Playgroud)

有关进行REST API调用的其他信息,请访问:https: //developer.linkedin.com/documents/profile-api