java - 使用在用户滚动时动态加载的 Jsoup 解析网站

标签 java android jsoup

我正在开发一个项目,该项目通过使用 Jsoup 解析网站来显示歌曲名称和该歌曲的链接。唯一的问题是,我只能从该网站获得我想要的前 10 个元素,因为当您向下滚动时,该网站会生成更多元素。我要解析的特定网站是一个名为 TrappedIO 的音乐网站.当您向下滚动网站时,您会注意到会出现更多的歌曲名称和图像。当我在 chrome 中使用 inspect element 时,我看到当我滚动时,它会生成更多我试图解析的元素。

我正在解析的 CSS 路径:#content > div.container > div > div:nth-child(index of element)

问题是当我使用这种方法通过 Jsoup 获取这个网站时,

Document doc = Jsoup.connect(url).get();

从 Jsoup 返回的 HTML:Pastebin

仅返回我要解析的前 10 个元素以及所有其他 HTML。 更具体地说,我在 AsyncTask 中使用 Jsoup 进行解析,然后使用解析后的数据填充 ListView。

有什么想法吗?关于如何一次加载所有内容的任何建议?非常感谢任何回复,谢谢。

最佳答案

很简单,要获得下一组10个,只需点击以下

http://trapped.io/?page=2

一般来说,只需在 page=PAGE_NUMBER 查询参数中输入正确的页码,您就可以在该页面中获得一组 10 个元素。

编辑:

请注意,抓取网站可能存在法律问题。我希望你已经仔细检查过在他们的网站上进行抓取是合法的。

关于java - 使用在用户滚动时动态加载的 Jsoup 解析网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25236886/

相关文章:

java - 将 Jersey 与 Grizzly 一起使用

android - 新数据插入后保存RecyclerView中特定项目的位置

java - 解析 HTML + Jsoup 时遇到问题

android - 如何在不丢失数据的情况下卸载android apk?

java - 两个 Android 应用程序共享相同的代码库。切换 Android list ?

java - 如何用java正确解析HTML?

java - Jsoup,选择元素不起作用

java - RichFaces:使用两个 modalPanel

java - 如何使用递归从数组中找到第 i 个 boolean 值?

Java方法专门检查数组是否有重复四次的元素