在http://www.friendsbalt.org/upper/stulife/calendar.asp上有一个静态表格的日历,我希望抓住服务器并逐行解析表格。这可能吗?你会如何以最有效的方式做到这一点?代码示例会很棒。
答案 0 :(得分:4)
如果您希望通过网页完成,可以使用Simple HTML DOM之类的内容。
require "simple_html_dom.php"; //Get this file from the link above
$html = file_get_html("http://example.com");
$data = array();
foreach($html->find("table tr") as $tr){
$row = array();
foreach($tr->find("td") as $td){
/* enter code here */
$row[] = $td->plaintext;
}
$data[] = $row;
}
然后所有数据都将出现在$ data变量中。
var_dump($data); //To prove it works.
我会考虑将它放在'刷新'脚本中,并将所有信息保存到数据库中。然后你可以从数据库中获取信息 - 这几乎是即时的。
然后,如果你愿意的话,你可以制作一个cron脚本,让它自己运行一个小时 - 更新数据库,使其中的信息保持新鲜。
这真的取决于你想用它做什么:)