【问题标题】:Java get string list from html with JSoupJava使用JSoup从html获取字符串列表
【发布时间】:2014-07-10 01:49:03
【问题描述】:

我需要从 URL 中获取名称为“keywords”的元标记的内容

<meta name="keywords" content="cat,dog,woof,meow">

我怎样才能用 JSoup 做到这一点?

我尝试按类获取元素,然后如果名称是关键字则尝试获取内容,但没有运气:

String keywords = document.select("meta.[name=keywords]").get(0).attr("content");

当涉及到没有 ID 的元素时,我不知道自己在做什么,给出的错误非常简单:

Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: String must not be empty
    at org.jsoup.helper.Validate.notEmpty(Validate.java:92)
    at org.jsoup.select.QueryParser.byClass(QueryParser.java:208)
    at org.jsoup.select.QueryParser.findElements(QueryParser.java:146)
    at org.jsoup.select.QueryParser.parse(QueryParser.java:65)
    at org.jsoup.select.QueryParser.parse(QueryParser.java:39)
    at org.jsoup.select.Selector.<init>(Selector.java:80)
    at org.jsoup.select.Selector.select(Selector.java:93)
    at org.jsoup.nodes.Element.select(Element.java:252)

【问题讨论】:

  • @KickButtowski 是的,但它不适用于没有 ID 的标签,所以我想我不会分享它。
  • 至少发布更多信息,以便我们了解更多信息并帮助您更快地解决问题?如果你有任何错误,你也应该把它贴出来:)
  • 能否请您也发布错误?
  • @KickButtowski 已编辑,谢谢

标签: java jsoup


【解决方案1】:

改变

document.select("meta.[name=keywords]") 

document.select("meta[name=keywords]")

http://jsoup.org/cookbook/extracting-data/selector-syntax

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-30
    • 2020-04-29
    • 1970-01-01
    • 2021-04-26
    • 2013-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多