返回整个html的php xpath
为什么这会返回整个html文档,而不仅仅是包含“H+R+E”的节点的值 html示例:返回整个html的php xpath,php,html,xpath,curl,screen-scraping,Php,Html,Xpath,Curl,Screen Scraping,为什么这会返回整个html文档,而不仅仅是包含“H+R+E”的节点的值 html示例: <tr class="linesAlt1"> <td>04:10 PM</td><td style="width:53%;">3055 Over</td><td style="width:22%;">3 H+R+E +146</td>
<tr class="linesAlt1">
<td>04:10 PM</td><td style="width:53%;">3055 Over</td><td style="width:22%;">3 H+R+E +146</td>
</tr>
默认情况下,
curl\u exec
打印到STDOUT
,这就是您看到的。换句话说,您没有在$html
中捕获任何输出(或者在该循环中打印任何内容)。首先,您需要重定向输出:
curl_setopt($ch, CURLOPT_FILE, fopen('php://stdout', 'w'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_URL, $url);
$html = curl_exec($ch);
在解决了这个问题之后,我查看了提供的URL的来源,在其中的任何地方都找不到文本--H+R+E
。它有一个表,但没有该内容。你在寻找一些不存在的东西
要证明它现在正在正确检索文件,请尝试以下完整示例:
$url = 'http://www.pinnaclesports.com/ContestCategory/MLB+Propositions/July+13~2C~+2012/Lines.aspx';
$ch = curl_init();
curl_setopt($ch, CURLOPT_FILE, fopen('php://stdout', 'w'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_URL, $url);
$html = curl_exec($ch);
curl_close($ch);
$doc = new DOMDocument();
$doc->loadHTML($html);
$xpath = new DOMXPath($doc);
foreach ($xpath->query("//table") as $table){
echo "[" . $table->nodeValue . "\n";
}
…生成以下输出(loadHTML
warnings省略):
[
客户端ID:
密码:
有关设置卷曲选项的详细信息:
curl\u exec
默认情况下打印到STDOUT
,这就是您看到的。换句话说,您没有在$html
中捕获任何输出(或打印该循环中的任何内容)。首先,您需要重定向输出:
curl_setopt($ch, CURLOPT_FILE, fopen('php://stdout', 'w'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_URL, $url);
$html = curl_exec($ch);
在解决了这个问题后,我查看了提供的URL的来源,但在其中的任何地方都找不到文本--H+R+E
。它只有一个表,但没有该内容。您正在查找不存在的内容
要证明它现在正在正确检索文件,请尝试以下完整示例:
$url = 'http://www.pinnaclesports.com/ContestCategory/MLB+Propositions/July+13~2C~+2012/Lines.aspx';
$ch = curl_init();
curl_setopt($ch, CURLOPT_FILE, fopen('php://stdout', 'w'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_URL, $url);
$html = curl_exec($ch);
curl_close($ch);
$doc = new DOMDocument();
$doc->loadHTML($html);
$xpath = new DOMXPath($doc);
foreach ($xpath->query("//table") as $table){
echo "[" . $table->nodeValue . "\n";
}
…生成以下输出(loadHTML
warnings省略):
[
客户端ID:
密码:
有关设置卷曲选项的详细信息: