php和js混起来写啊
可以用 Nodejs 解析 HTML,生成数据结构(JSON或XML),然后再用 PHP 来来处理后续的部分。
可以用 PHP 调用 Node 进程的方式,不过这样比较慢
另一种方式就 Node 和 PHP 同时运行,分别做自已的事情(任务队列)。任务不是一个个有序完成,而是 Node 处理成半成品之后,送到半成品库,再由 PHP 出库继续处理。
楼主应该要找的是PHP的DOM操作库吧,可以试试simple_html_dom.php
:
http://simplehtmldom.sourceforge.net/manual.htm
比如抓取PHP官网首页新闻:
<?php
require dirname(__FILE__).'/simple_html_dom.php';
$html = file_get_html('http://php.net/');
$news = array();
foreach($html->find('article.newsentry') as $article) {
$item['time'] = trim($article->find('time', 0)->plaintext);
$item['title'] = trim($article->find('h2.newstitle', 0)->plaintext);
$item['content'] = trim($article->find('div.newscontent', 0)->plaintext);
$news[] = $item;
}
print_r($news);
PHP类似的DOM操作库还有phpQuery和Ganon,也可以试试:
phpQuery - jQuery port to PHP
https://github.com/TobiaszCudnik/phpquery
Ganon - Fast (HTML DOM) parser written in PHP
https://github.com/Shemahmforash/Ganon
nodejs完全可以代替PHP。
爬数据,为什么非要用PHP?