对于家庭作业项目,我正在创建一个PHP驱动的网站,其主要功能是汇总各种大学课程的新闻。 主要问题是:(几乎)每个课程都有自己的网站。这些通常只是纯HTML或使用一些简单的免费CMS系统构建。 作为一名学生,参加6-7门课程,几乎每天都会通过6-7个网站检查是否有任何新闻。该项目背后的想法是您不必这样做,而是只检查聚合站点。
我的想法如下:每次学生登录时,都要查看他的课程列表。对于每个课程,获取它的网站(递归地,与wget一样),并创建它的哈希值。如果哈希值与存储在数据库中的哈希值不同,我们知道该站点已更改,我们会通知学生。
那么,您认为,这种实现功能的合理方式是什么? 如果是的话,(技术上)最好的方法是什么?我正在检查php_curl,我不知道它是否可以递归获取网站。
此外,还有一个小问题,我的资源有限,在公共(大学)服务器上只有几MB的配额。但是,如果这是一个大问题,我可以使用单独的托管解决方案。
谢谢:)
答案 0 :(得分:1)
如果您必须使用file_get_contents
或 cURL ,请使用(如果您需要COOKIES)。
您可以使用散列技巧来检查修改,但它不是很优雅。您想知道的是它最后更改的时间。我怀疑这些信息是在网站上,但也许他们提供了RSS提要或一些可用于此目的的网络服务或API。
不要担心做递归请求。只需每次都提出新请求。
“当其他所有方法都失败时,建立一个刮刀”