2013-08-05 29 views
4

我试图从外部网站提取数据(文本),并将其放在我的网站上。 我想获得一个外部网站的足球比分,并把它放在我的。 我已经研究并发现我可以使用Preg_Match来做到这一点,但我似乎无法弄清楚如何提取html标签中的数据。如果可能,如何用PHP从外部网站获取数据(文本)?

例如

这是一个外部网站的HTML结构。

<td valign="top" align="center" class="s1"><b>Text I Want To Fetch</b></td> 

如何获取标签内的文本?会帮助我分配!谢谢!

+1

使用[DOM库](http://php.net/manual/en/class.domdocument.php),如果您对此库有任何疑问,感觉自由回来! –

+0

+1快速和有帮助@DaveChen :) – woofmeow

+0

我是一个巨大的菜鸟,需要一个坚实的例子,这是我的理解相同的问题。但感谢您的快速提示! – user2651511

回答

2

试试这个:

<?php 

$html = '<td valign="top" align="center" class="s1"><b>Text I Want To Fetch</b></td>'; 

$dom = new DOMDocument(); 
$dom->loadHTML($html); 
$dom = $dom->getElementsByTagName('td'); //find td 
$dom = $dom->item(0);     //traverse the first td 
$dom = $dom->getElementsByTagName('b'); //find b 
$dom = $dom->item(0);     //traverse the first b 
$dom = $dom->textContent;    //get text 

var_dump($dom);       //dump it, echo, or print 

Output

在这个例子中,没有发现任何其他textContent,所以如果你的HTML只有内大胆的文字,你可以使用这个还有:

<?php 

$html = '<td valign="top" align="center" class="s1"><b>Text I Want To Fetch</b></td>'; 

$dom = new DOMDocument(); 
$dom->loadHTML($html); 
$dom = $dom->textContent; 

var_dump($dom); 

Output

+0

正是我所需要的!我如何使用这个外部网站?我在哪里打开这个网址? – user2651511

+0

我会听Dagon的评论。有什么问题的网站?如果他们不提供API,他们可能不希望你这样做。而Stackoverflow是**不是**的地方,然后问这些类型的问题。 –

+0

得分在右下角 http://voetbalzone.nl/ – user2651511

0

如果找你e谈论使用php来获取数据,然后file_get_contents(url)可能会有所帮助;但是,您也可以使用Jquery使用AJAX请求获取数据。下面是链接到AJAX文档: http://api.jquery.com/jquery.ajax/