0

我想从这个站点(在中心板)获取所有最新消息: http ://web.hanu.vn/en/ 我最新的方法是在 PHP 中使用 Simple HTML DOM Parser 来解析 html,但我认为是这样慢的。我的想法是从类似这个网站的近 20 个类似网站获取新闻。它们都是由 Moodle 开发的,因此它们具有相同的 html 格式。但是,1 个站点需要几秒钟才能获取 => 20 个站点需要很多时间。有没有比解析 HTML 更好的方法?或者我应该将结果存储在数据库中并在一段时间后更新它而不是为每个用户请求获取它?我在做所谓的“爬行”,不是吗?

4

3 回答 3

3

或者我应该将结果存储在数据库中并在一段时间后更新它而不是为每个用户请求获取它?

是的你应该。并坚持解析 HTML,不要使用正则表达式解析 HTML

而您正在尝试做的是网页抓取,而不是抓取(除非您真的抓取页面)。

于 2012-11-22T21:05:32.947 回答
0

我建议您使用 curl 下载页面,并在不使用 regex 的情况下进行正确的处理,尝试使用 substr、strpos、strip 标签等......并将最后的通知存储在数据库中,并使用 cronjob 更新它。

于 2012-11-22T15:24:27.537 回答
-1

我建议您使用正则表达式。(维基百科)此外,使用 strpos 和 substr 函数去除 HTML 数据的某些部分是一个非常好的主意,它们比正则表达式更快。这是一个不错正则表达式测试器。

于 2012-11-22T15:09:20.257 回答