0

我正在尝试创建一个 java 程序来检测网页上 HTML 元素的变化。例如:http ://timer.onlineclock.net/

每过一秒,时钟的 HTML 元素就会改变它们显示的图像的来源。无论如何,使用java,我可以有效地打开到这个页面的连接,并且能够看到这些元素何时发生变化?

我使用过 HTMLUnit,但我认为加载页面需要很长时间才能被认为足够高效。

我知道如何使用 URL 的唯一方法是使用 BufferedReader 读取页面,然后使用正则表达式解析源中的 HTML 元素,但这需要我每次“重新加载”页面我想查看元素的属性。谁能给我一个关于如何在几毫秒内检测到这些变化而不使用太多网络资源的建议?

4

2 回答 2

0

您最好的选择是学习和使用 javascript 而不是服务器端 java。Javascript 程序运行在客户端(即:网络浏览器)而不是服务器端。

典型的 HTML 文档由元素组成(例如:文本、段落、列表项等)。使用 javascript,您可以创建计时器,相应地操作用户事件并操作这些元素。

http://www.w3schools.com/js/default.asp大概是一个不错的javascript入门介绍,建议大家花点时间了解一下

于 2013-01-02T22:33:55.350 回答
0

有问题的页面似乎是...Javascript 数字时钟。

如果您想要当前时间,请尝试new Date();.

如果您希望以恒定速率调用代码,请尝试Timer该类。您可以将任务设置为每秒调用一次,这与您通过轮询页面获得的频率相同。

如果您想将该页面用作外部时间源,请尝试使用网络时间协议。http://en.wikipedia.org/wiki/Network_Time_Protocol它将提供更低的延迟,实际上就是为此目的而设计的。

于 2013-01-02T22:36:02.993 回答