【发布时间】:2018-06-01 11:08:27
【问题描述】:
我正在尝试从此页面中提取 GitHub 链接
https://plugins.jenkins.io/hugo
val doc = JSoup.parse("https://plugins.jenkins.io/hugo")
来自 Chrome 的 XPath
//*[@id="grid-box"]/div/section/div[2]/div[2]/div/div/div[1]/div/div/div[1]/div[2]/a
Chrome 中的选择器
#grid-box > div > section > div.dialog > div.content > div > div > div.col-md-9.main > div > div > div:nth-child(1) > div:nth-child(2) > a
JSoup 查询
#grid-box > div > section > div:eq(2) > div:eq(2) > div > div > div:eq(1) > div > div > div:eq(1) > div:eq(2) > a
代码片段
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import us.codecraft.xsoup.Xsoup;
val doc = Jsoup.parse("https://plugins.jenkins.io/hugo")
Xsoup.compile("""//*[@id="grid-box"]/div/section/div[2]/div[2]/div/div/div[1]/div/div/div[1]/div[2]/a""").evaluate(doc).list
也尝试过 XPath、Selector,但无法提取值
我需要这个页面上的 github 链接
<a href="https://github.com/jenkinsci/hugo-plugin">GitHub →</a>
如果可能的话,谁能给我指出正确的 API 吗?
【问题讨论】:
-
您是否尝试过使用 Chrome 中的选择器?
-
是的,我实际上是从 Chrome 复制的
-
你为什么用
Jsoup.parse(link)而不是Jsoup.connect(link).get()?