对于一个作业项目,我正在创建一个PHP驱动的网站,其主要功能是聚合各种大学课程的新闻。主要的问题是:(几乎)每个课程都有自己的网站。这些通常只是普通的HTML或使用一些简单的免费CMS系统构建。作为一名学生,参加6-7门课程,几乎每天都会浏览6-7个网站,查看是否有任何新闻。该项目背后的想法是,您不必这样做,相反,您只需检查聚合站点。
我的想法是这样的:每次学生登录时,都要检查他的课程列表。对于每个课程,获取它的网站(递归地,就像使用wget),并创建它的散列值。如果散列与存储在数据库中的散列不同,我们知道该站点已更改,并通知学生。
那么,您认为这是实现功能的合理方式吗?如果是,那么(从技术上)最好的方法是什么?我在检查php_curl,我不知道它能不能递归地得到一个网站。
此外,还有一个小问题,我的资源有限,在公共(大学)服务器上只有几MB的配额。但是,如果这是一个大问题,我可以使用单独的托管解决方案。
谢谢:)
发布于 2011-06-18 20:36:39
如果必须的话,只需使用file_get_contents
或cURL即可(以防需要COOKIES)。
您可以使用您的散列技巧来检查修改,但它不是很优雅。你想知道的是它最后一次更改是什么时候。我怀疑这些信息在网站上,但也许他们提供了一个RSS提要,或者一些for服务或API,你可以使用它来达到这个目的。
不要担心做递归请求。每次只需发出一个新的请求。
当所有其他方法都失败时,构建一个刮板程序
https://stackoverflow.com/questions/6396014
复制相似问题