PHP脚本可以从多个title =某些网站的值中提取文本?

时间:2014-02-07 14:02:36

标签: php

我需要脚本来定义网址,然后从这部分html代码中提取出来,这些代码在网络上多次出现所有标题值。这只是该网站的一个例子:

<td><a title="Articlesiteslist.com Analysis" href="http://www.statscrop.com/www/articlesiteslist.com"><img src="http://static.statscrop.com/favicons.png" class="data_original img_icon" data-original="http://s2.googleusercontent.com/s2/favicons?domain_url=articlesiteslist.com" width="16" height="16" alt="articlesiteslist.com" title="articlesiteslist.com"> articlesiteslist.com</a></td>

明日

由此我只需要标题,所以从title =“example”中只能出示示例值。

非常感谢您的帮助,现在试图解决这个问题两天了。

1 个答案:

答案 0 :(得分:0)

要扩展Amal Murali的想法,您需要做出以下建议。

例如,您想要加载一些“a.html”文件:

<html>
<body>
Lorem ipsum dolor
<a title="Ravellavegas.com Analysis" href="http://somewebsite.com/" />
sit amet, consectetur adipisicing elit, sed do eiusmod tempor
<a title="Articlesiteslist.com Analysis" href="http://someanotherwebsite.com/" />
incididunt ut labore et dolore magna aliqua.
</body>
</html>

然后,您必须按如下方式编写脚本:

<?php

$dom = new DOMDocument();
$dom->load('a.html');

foreach ($dom->getElementsByTagName('a') as $tag) {
    echo $tag->getAttribute('title').'<br/>';
}

?>

输出:

Ravellavegas.com Analysis
Articlesiteslist.com Analysis

变体#2

<?php
$text = <<<EOT
<html>
<body>
Lorem ipsum dolor
<a title="Ravellavegas.com Analysis" href="http://somewebsite.com/" />
sit amet, consectetur adipisicing elit, sed do eiusmod tempor
<a title="Articlesiteslist.com Analysis" href="http://someanotherwebsite.com/" />
incididunt ut labore et dolore magna aliqua.
</body>
</html>
EOT;

preg_match_all('/title=".*?"/is', $text, $matches);
foreach($matches[0] as $m)
{
    $m = str_replace('title="', "", $m);
    $m = str_replace('"', '', $m);
    echo htmlentities($m)."<br />";
}
?>

这仍然是输出:

Ravellavegas.com Analysis
Articlesiteslist.com Analysis