标签: android ajax jsoup
我想在我的android app.i中使用jsoup和httpget以及InputStreamReader从网站中提取数据,但问题是我想要的文本显示在浏览器中并且在我获取代码时隐藏。这意味着& #34;显示页面来源"浏览器的选项不会显示该文本。我认为文本可能由ajax.can生成任何人帮助我如何获取该文本?
提前致谢
答案 0 :(得分:1)
问题是ajax / ASP页面是使用在生成代码的浏览器端运行的脚本触发而动态生成的。 JSoup只是发出HTTP请求来获取HTML,但不执行许多ajax站点生成整页所需的java脚本。查看页面来源'在浏览器中将显示脚本动态生成的所有源。
为了解决这个问题,您需要升级到无头浏览器才能阅读这些网站。这可以通过Java中的一些不同工具来完成: HtmlUnit Selenium
答案 1 :(得分:1)
您可以使用网络分析工具找出您的浏览器在后台进行的请求。为了检查HTTP流量,可以使用多种工具。我推荐像HttpFox这样的浏览器扩展程序或像Fiddler 2这样的独立工具。该过程非常简单并且始终相同:浏览到站点并确保加载了所需的资源。然后,检查记录的流量。或者,明显的URL或mime类型会指向正确的资源,或者您通过检查响应来查找资源。 在大多数情况下,此过程有效。实际上很少需要在页面中运行或检查脚本。