Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css Jsoup选择元素_Css_Json_Jsoup_Elements - Fatal编程技术网

Css Jsoup选择元素

Css Jsoup选择元素,css,json,jsoup,elements,Css,Json,Jsoup,Elements,我正在使用“try jsoup”页面测试css查询。出于某种原因,这突然不再有效(可能是网站的改变) 我甚至复制了chrome开发者工具中的整个路径: #results > div:nth-child(1) > div.hpnwstxt.indextxt > span > div > p:nth-child(1) > span 这没有给出任何输出 我甚至尝试了我的“旧”查询,这在以前非常有效: div.indexitem.docsindex span 我

我正在使用“try jsoup”页面测试css查询。出于某种原因,这突然不再有效(可能是网站的改变)

我甚至复制了chrome开发者工具中的整个路径:

#results > div:nth-child(1) > div.hpnwstxt.indextxt > span > div > p:nth-child(1) > span
这没有给出任何输出

我甚至尝试了我的“旧”查询,这在以前非常有效:

div.indexitem.docsindex span
我哪里做错了

(在我发布的链接中,您可以查看并测试发布页面的查询)

为了清楚起见,我使用了以下代码:

Element basismenu1 = document.select("div.indexitem.docsindex span").get(1);

哇,这很奇怪,我认为这是由于页面中的
IFRAME
导致的错误,它混淆了JSoup

我建议你向JSoup小组报告

到目前为止,我已经找到了两个解决办法:

  • 您可以在解析页面之前删除有问题的
    IFRAME
    ,方法如下:

    page = page.replace("<iframe src=\"//www.googletagmanager.com/ns.html?id=GTM-WB3L2P\" height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\" />", "");
    Document doc = Jsoup.parse(page);
    
    page=page.replace(“,”);
    文档doc=Jsoup.parse(第页);
    
  • 您可以使用旧版本的JSoup,我发现JSOUP1.5.2没有问题

我希望这会有帮助

编辑

我认为这是导致您的问题的错误:


非常感谢!!我决定像你说的那样使用以前版本的JSoup,出于某种原因,它起了作用!