Jsoup是一个Java HTML解析器,用于提取和操作HTML数据,使用最好的DOM,CSS和类似jQuery的方法。
我想用jsoup抓取一个网站。该网站是动态的,每秒左右更新一次。我很确定它使用了 jQuery,它更新了 HTML 中的一些 标签。我正在使用 jsou...
如何在网页中查找第一个图像或视频缩略图。该代码检索图像,但它始终不是第一个可见图像,并且也无法正确获取视频缩略图。怎么做这个...
如何使用 JSoup Java 获取 Google 搜索的第一个标题和 URL?
我第一次使用 Jsoup,并尝试获取搜索查询的第一个 URL 和标题。代码运行时没有任何错误,但由于某种原因没有显示任何内容。我没有收到任何
作为对 JSoup 调用的响应,我得到了这样的文档 作为对 JSoup 调用的响应,我收到了这样的文档 <body> <link rel="modulepreload" href="chunk-a.js"> <link rel="modulepreload" href="chunk-b.js"> <link rel="modulepreload" href="chunk-c.js"> </body 在浏览器中,Javascript 在运行时执行,我看到了有效的 HTML。有没有办法让 Jsoup 执行 Javascript,以便我看到 HTML 结果?预先感谢您的帮助 Jsoup 仅用于解析 HTML,这里你想要的是一个无头浏览器。如果您必须使用java来实现此目的,那么您的选择是: htmlunit(但 javascript 支持不是很好,如果页面有大量 js,则不会推荐它) Selenium(浏览器自动化,包括 Java 语言绑定)
如何使用 Jsoup 和 java 从该网站的按钮上抓取“85”?
tesco.com 的 html 请帮助我,我很困惑,很累,我只是觉得我已经精疲力尽了。我想从该页面中过滤掉 85,但我不知道该怎么做 字符串 url = "...
使用 __doPostBack 函数分析具有分页功能的 .aspx 站点
我想分析网页的一些数据,但问题是:该网站有更多页面被 __doPostBack 函数调用。 我怎样才能“模拟”进一步翻页并分析这个......
如: 文档 doc = Jsoup.parse(file,"UTF-8"); 元素 eles = doc.getElementsByTag("style"); 如何获取文件中 eles[0] 的行号?
嗨,我想使用 JSoup 库从网站上抓取一些文本。我尝试了以下代码,这给了我整个网页,我只想提取特定行。这是代码...
我需要弄清楚如何抓取网站并从经过身份验证的网站下载文件。 一个脚本需要 使用用户名/密码登录该网站 浏览页面以获取...
为 Android 应用程序抓取此 HTML 的最佳方法是什么?
从网页中抓取以下 HTML 的最佳方法是什么? 我想取出 Apple、Orange 和 Grape,并将它们放入我的 Android 应用程序的下拉菜单中。 我应该使用 Jsoup 吗?如果...
我的要求是抓取数组中的所有评论数据,例如评论者姓名、日期和评论。我正在通过导入 Jsoup 在 groovy 脚本中的 mulesoft 中执行此操作。 使用下面的查询我可以获取...
我有这个html,我想解析它 代码如下 乌诺 帮。博尼 4.1 ★ 18+<... 我有这个html,我想解析它 以下代码 <div class="info"> <strong>uno</strong> <p>gang . boni</p> <p>4.1 ★ <span>18+</span></p> </div> 这是我的代码 val ce= doc2.select("div [class='columns is-multiline'] p:eq(2)") println(ce) 它的输出是这样的 <p>4.1 ★ <span>18+</span></p> 但我希望输出仅为 4.1 如何做到这一点?我尝试先做,但它给了 同样的事情。 编辑: val ComboImageUrls: Elements = doc2.select("div [class='columns is-multiline'] img[src]") val p = doc2.select("div [class='columns is-multiline'] p:eq(2)").first() val ce: String = (p.childNode(0) as TextNode).text() ComboImageUrls.forEachIndexed { index, movieItem -> `is`++ val Final = ce println(Final) } 这是代码,其输出是这样的 3.7 ★ 3.7 ★ 3.7 ★ 3.7 ★ 3.7 ★ 这不是我想要的。我已经可以做到这一点,但这不是我想要的,因为它复制了结果,它应该给出不同的结果,例如 4.1 3.1 2.1 4.5 3.3 等等 如果我在循环中使用子字符串,它将简单地限制到第一个元素,并使循环无法正常运行。 有一种方法可以将节点文本与其内部元素分开: val cssQueryResult: Elements = Jsoup.parse(q).select("div p:eq(2)") val p: Element = cssQueryResult.first() val ce: String = (p.childNode(0) as TextNode).text() // will be equal to '4.1 ★ ' 进一步裁剪至“4.1”应通过纯 Kotlin 完成。 根据解析结果的差异,它可能是一些正则表达式或只是简单的ce.substringBeforeLast('★').trim()
所以我使用 JSoup 来抓取一个网站,该网站创建了一堆具有动态类名的 div(它们每次重新加载都会更改),但属性名称相同。例如: 所以我使用 JSoup 来抓取一个网站,该网站创建了一堆具有动态类名的 div(它们每次重新加载都会更改),但属性名称相同。例如: <div class="[random text here that changes] js_resultTile" data-listing-number="[some number]"> <div class="a12_regularTile js_rollover_container " itemscope itemtype="http://schema.org/Product" data-listing-number="[same number here]"> <a href... 我尝试了多种方法来选择这些 div 并将它们保存在元素中,但我似乎无法做到正确。我已经按属性尝试过: Document doc = Jsoup.connect([theUrl]).get(); Elements myEls = doc.select("div[data-listing-number]"); 我在课堂上尝试过: Document doc = Jsoup.connect([theUrl]).get(); Elements myEls = doc.getElementsByClass("a12_regularTile") 并且: Document doc = Jsoup.connect([theUrl]).get(); Elements myEls = doc.select("div[class*=js_resultTile]") 我尝试了另一种属性方法: Document doc = Jsoup.connect([theUrl]).get(); Elements myEls = new Elements(); for (Element element : doc.getAllElements() ) { for ( Attribute attribute : element.attributes() ) { if ( attribute.getKey().equalsIgnoreCase("data-listing-number")) { myEls.add(element); } } } 这些都不起作用。我可以选择获取所有 HTML 的文档,但我的 myEls 对象始终为空。我可以用什么来选择这些元素? 您确定这些元素存在于服务器返回的 HTML 中吗?它们可能稍后由 JavaScript 添加。如果页面呈现涉及JavaScript,那么您将无法使用Jsoup。更多详细信息,请参阅我对类似问题的回答:JSoup:难以提取单个元素 还有一个提示。您可以使用以下方法来代替 for-for-if 结构: for (Element element : doc.getAllElements()) { if (element.dataset().containsKey("listing-number")) { myEls.add(element); } }
我终于让 IntelliJ 开始工作了。我正在使用下面的代码。它工作完美。我需要它一遍又一遍地循环,并从电子表格中提取链接,以便一遍又一遍地查找不同商品的价格...
我的问题是:从网页中刮掉诅咒价格(8875.53)。 8875.53 但我的方法失败了。有人知道我的错误是什么吗? 导入...
我正在尝试在 Android 应用程序中使用 JSoup 抓取网页的元数据,但最终会下载网站的移动版本。有没有办法让网站相信请求...
我想从 streetinsider.com 打印一些数据(div with class="news_article")。我创建了一个帐户,需要登录才能访问这些数据。 谁能解释一下为什么这段代码不起作用...
我正在尝试使用 xsoup 解析 html 页面。 这是我的代码: 文档 doc = Jsoup.connect("http://appsvr.mardelplata.gob.ar/Consultas07/OrdenesDeCompra/OC/index.asp?fmANIO_CON=2015&
这是代码片段,它总是返回错误页面 尝试 { 字符串 url = "http://kepler.sos.ca.gov/"; Connection.Response 响应 = Jsoup.connect(url) .方法(
我已经使用JSOUP进行抓取,它的工作非常完美,直到ajax和javascript无法发挥其作用来显示网页内容。 现在大家有什么线索,如何抓取那些内容