Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HTML元素读取_Java_Html - Fatal编程技术网

Java HTML元素读取

Java HTML元素读取,java,html,Java,Html,我正在尝试创建一个java程序来检测网页上HTML元素的变化。例如: 每过一秒,时钟的HTML元素都会改变它们显示的图像的来源。使用java,我是否可以高效地打开与此页面的连接,并能够看到这些元素何时发生更改 我曾经使用过HTMLUnit,但我认为加载一个页面需要很长时间才能被认为足够有效 我知道如何使用URL的唯一方法是使用BufferedReader读取页面,然后使用正则表达式解析源代码中的HTML元素,但这需要我在每次希望查看元素属性时“重新加载”页面。有谁能给我一个建议,告诉我如何在几毫

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

每过一秒,时钟的HTML元素都会改变它们显示的图像的来源。使用java,我是否可以高效地打开与此页面的连接,并能够看到这些元素何时发生更改

我曾经使用过HTMLUnit,但我认为加载一个页面需要很长时间才能被认为足够有效


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

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

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


这可能是对javascript的一个很好的介绍,我建议您花一些时间在它上面

这个页面似乎是一个……javascript数字时钟

如果需要当前时间,请尝试
newdate()

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


如果要将页面用作外部时间源,请尝试网络时间协议。它将提供更低的延迟,并且实际上是为此目的而设计的。

如果您想解析HTML,最好使用现有的HTML解析器,而不是编写自己的解析器。不能使用正则表达式解析HTML(请参阅)。也许更好的问题是你想做什么?通过将HTML视为文本字符串并区分两个字符串,可以实现同样的效果吗?