我正在处理内容解析我为此执行了示例程序我已经获取了示例链接 请访问以下链接
或
在上面的链接中,我解析了表数据并将其存储到java对象中。
BSE 和 NSE 不是我的确切要求,只是我拿的示例。上面的链接是在表中开发的,它们不使用 id 和类。在我的示例中,我使用 XPath 解析数据
这是我的 Xpath
/html/body/table[4]/tbody/tr/td/table[2]/tbody/tr[2]/td[2]/font/table[2]
我选择并解析它工作正常。如果他们更改了网站结构,将来就会出现问题,我的程序肯定无法运行。告诉我任何其他动态解析数据并能够存储在数据库中的方法。根据条件显示结果,即使它们更改了网页结构(我用于此 JSOUP api)。告诉我任何其他可为此类需求提供最佳支持的 API
最佳答案
如果您尝试解析没有任何明确 id/class 的页面来选择节点,则必须尝试依赖其他东西。重新定义整个树确实是最弱的方法,如果添加/更改任何内容,所有内容都会崩溃。
您可以尝试依靠颜色://table[@bgcolor="#c9d0e0"]
,“获取更多信息”字段://table[tr/td//text()="GET MORE INFO"]
,每行都有“更多信息”://table[.//td//text()=" More Info "]
...
这个想法是找到一些理想的独特的东西(如果你找不到任何独特的标准,table[选择几个表格的颜色条件][2]
在整个树上行走仍然更强),每次都出现,并将其用作 id。
关于java - 动态内容解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21251722/