simple_html_dom:试图在 google 搜索中找到身高

simple_html_dom: trying to find height in google search

任何人都可以向我解释代码有什么问题以及我如何获得高度值?我想知道名人的身高。有什么建议吗?

谢谢。

我的代码(根据建议更新了 CURL 用户代理设置):

$url='https://www.google.com/webhp?ie=UTF-8#q=ailee+height';

//Set CURL user agent
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);

$data = curl_exec($ch);
curl_close($ch);

//simple html dom
require_once('lib/simple_html_dom.php');
$html = str_get_html($data);
$height= $html->find('div[class="_eF"]',0)->innertext;
echo $height;

我从上面的代码中得到了空。在这种情况下,我想 return:

5' 5" (1.65 m)

问题是 curl 不处理 JavaScript 并且当 JavaScript 被禁用时 Google 将显示不同的网页,在这种情况下, div 更改为具有不同 id

span
<span class="_m3b">1.65 m</span>

此外,您使用的 link 对我不起作用。

试试这个:

<?php
header('Content-Type: text/html; charset=utf-8');
$url='https://www.google.pt/search?q=ailee+height&num=10&gbv=1';

//Set CURL user agent
$ch = curl_init();
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);

$data = curl_exec($ch);
curl_close($ch);

require_once('simple_html_dom.php');
$html = str_get_html($data);
$height= $html->find('span[class="_m3b"]',0)->innertext;
echo $height;
//1.65 m