php刮取并输出所有具有标记、h1、p等类型的内容

php刮取并输出所有具有标记、h1、p等类型的内容,php,xpath,scrape,Php,Xpath,Scrape,我几乎不知道如何做到这一点,但我只知道如何从给定的h1标记中获取特定的东西,该标记名为________; for ex。我对php非常陌生,所以我不完全确定如何装配它。我想看看我是否能弄明白,对于一个随机的网站,如何使用for-ex,一个h1标签刮取并输出所有内容 这就是我目前能做的。它可能只需要一个小的修改。思想?多谢各位 这从一个名为“世界市场”的标签上删除了所有内容。在不破坏代码的情况下,我无法完全理解的是如何简单地输出标记中的任何内容 <?php $doc = new DOM

我几乎不知道如何做到这一点,但我只知道如何从给定的h1标记中获取特定的东西,该标记名为________; for ex。我对php非常陌生,所以我不完全确定如何装配它。我想看看我是否能弄明白,对于一个随机的网站,如何使用for-ex,一个h1标签刮取并输出所有内容

这就是我目前能做的。它可能只需要一个小的修改。思想?多谢各位

这从一个名为“世界市场”的标签上删除了所有内容。在不破坏代码的情况下,我无法完全理解的是如何简单地输出标记中的任何内容

<?php 

 $doc = new DOMDocument;

// foriegn stocks
 $doc->preserveWhiteSpace = false;


 $doc->strictErrorChecking = false;
  $doc->recover = true;

 $doc->loadHTMLFile('http://www.money.cnn.com/data/markets/');

 $xpath = new DOMXPath($doc);

  $query = "//a[@class='world-market']";

  $entries = $xpath->query($query);
 foreach ($entries as $entry) {
 echo trim($entry->textContent);  // use `trim` to eliminate spaces
 }

 ?>

如果您想要给定标记的所有内容,仅查询“//a”是否不够?或者“//a/text()”?如果您正在查找href部分,可以尝试“//a/@href”


祝你好运。

使用PHPQuery,这是一个类似Jquery的Dom文档和选择器实现,它非常容易使用,效果非常好。这里有一个不错的教程,尽管我相信你也可以找到其他教程,请看一看。如果您对使用Xpath选择所需元素感到困惑,欢迎提供帮助。希望对您有所帮助:)