PHP从<pre>?</pre>中提取文本

时间:2013-03-29 16:51:15

标签: php html

我有一个.html文件,如下所示:

<html>
<body>
<pre style="word-wrap: break-word; white-space: pre-wrap;">{blah blah blah text that I want extracted} </pre>
</body>
</html>

我想创建一个PHP脚本,它将从<pre>标记中提取内部文本。我尝试过简单的HTML DOM,并没有完成任何事情,它只是回忆一下。我不知道我在这里做错了什么或者不管我是不是应该使用Simple HTML Dom。继承我的PHP脚本代码,从html文件中提取文本:

<?php
include 'simple_html_dom.php';
// Create DOM from URL or file
$html = file_get_html('http://data.mtgox.com/api/2/BTCUSD/money/ticker');

// Find all images
foreach($html->find('img') as $element)
       echo $element->src . '<br>';

// Find all links
foreach($html->find('pre') as $element)
       echo $element . '<br>';
?>

关于它不起作用的任何想法?

2 个答案:

答案 0 :(得分:2)

工作DOMDOcument示例

$doc = new DOMDocument();
$doc->loadXML('<html><body><pre style="word-wrap: break-word; white-space: pre-wrap;">{blah blah     blah text that I want extracted} </pre></body></html>');
$pres = $doc->getElementsByTagName('pre');
foreach($pres as $v){
   echo $v->firstChild->wholeText.'<br />';
}

答案 1 :(得分:0)

您要获取的URL是返回JSON,而不是HTML。

使用a json parser来处理它。