Java 选择<;p>;使用Jsoup从HTML

Java 选择<;p>;使用Jsoup从HTML,java,jsoup,Java,Jsoup,我想获得此标签下的段落: **如果要查看标记下的外观,请执行以下操作: 我试图: Document doc = Jsoup.connect(url).userAgent("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.21 (KHTML, like Gecko) Chrome/19.0.1042.0 Safari/535.21").get(); Elements a = doc.select("p#dev-content"); Elements

我想获得此标签下的段落:

**如果要查看标记下的外观,请执行以下操作:

我试图:

Document doc = Jsoup.connect(url).userAgent("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.21 (KHTML, like Gecko) Chrome/19.0.1042.0 Safari/535.21").get();
Elements a = doc.select("p#dev-content");
Elements b = doc.select("dev-content");
Elements c = doc.select("p#dev-content.details-text.ng-binding");
Elements d = doc.select("dev-content.details-text.ng-binding");
Elements e = doc.select("p.details-text.ng-binding");
但不幸的是,这一切都不起作用

我还尝试:

Elements f = doc.select("p");
我得到了我想要的段落和不想要的段落,它们被复制了


**如果您想访问我尝试过的站点:

您要访问的站点将使用AngularJS加载其数据。这就是Jsoup无法找到正确段落的原因

希望您要查找的内容以JSON字符串的形式出现在页面上

以下是用于提取此数据的示例代码:

示例代码 输出(剥离)
提取的内容:
(四)本条例草案在1578各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各各在18 18 18 18岁的情况下,在15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15ᜭ

依赖关系

org.jsoup

  • // Fetch the document
    Document doc = Jsoup //
            .connect("https://sabq.org/%D8%B4%D8%A7%D9%87%D8%AF-%D8%A3%D9%84%D9%81-%D8%B5%D9%81%D8%AD%D8%A9-%D8%AA%D8%B1%D9%88%D9%8A-%D9%82%D8%B5%D8%B5-%D8%A7%D9%84%D8%AD%D8%B1%D9%85%D9%8A%D9%86-%D9%85%D9%86%D8%B0-%D8%A7%D9%86%D8%B7%D9%84%D8%A7%D9%82-%D8%A7%D9%84%D8%B9%D9%87%D8%AF-%D8%A7%D9%84%D8%B3%D8%B9%D9%88%D8%AF%D9%8A") //
            .userAgent("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.21 (KHTML, like Gecko) Chrome/19.0.1042.0 Safari/535.21") //
            .get();
    
    // Look for the script containing the JSON data
    Elements scripts = doc.select("script[data-cfasync=false]");
    String content = null;
    for (Element script : scripts) {
        String scriptText = script.html();
        if (scriptText.contains("dataFirstLoad")) {
            String dataFirstLoad = scriptText.replaceAll("(?i)^[\\s\\S]*dataFirstLoad\\s*=\\s*(\\{.+\\})\\s*;[\\s\\S]*$", "$1");
    
            JSONObject json = new JSONObject(dataFirstLoad);
    
            content = json.getJSONObject("material").getString("content");
    
            break;
        }
    }
    
    // Show content
    System.out.println("Extracted content:\n" + content);
    
    Extracted content:
    <p><span style="color:#FF0000;">(تصوير :فايز الزيادي،عبدالله النحيط) :</span> تتزاحم في جناح رئاسة الحرمين الشريفين وفي مساحة صغيرة لا تتجاوز بضعة أمتار على أرض معرض الرياض الدولي للكتاب، 16 ألف ورقة، ينبعث من حروفها رحيق الطُهر لت(...)    </p>  <p> </p>
    
    <dependency>
        <groupId>org.jsoup</groupId>
        <artifactId>jsoup</artifactId>
        <version>1.8.3</version>
    </dependency>
    
    <dependency>
        <groupId>org.json</groupId>
        <artifactId>json</artifactId>
        <version>20160212</version>
    </dependency>