Как извлечь тексты между тегами <p> используя jsoup

Я хочу извлечь тексты из html-страниц, помещенных в теги p и li, поэтому я могу начать токенизировать страницу для создания инвертированных индексов (индексов) для каждой страницы, чтобы удовлетворить запросы поиска. Как я могу получить p-теги с помощью jsoup

Elements e=doc.select(""); 

Что может быть строкой, которая должна быть записана в этом параметре.?Thanks

Ответ 1

Это может выполнить задание

Elements e=doc.select("p"); 

Вот список всех селекторов, которые вы можете использовать.

Предположим, что у вас есть этот html:

String html="<p>some <strong>bold</strong> text</p>";

Чтобы получить some bold text, вы должны использовать:

Document doc = Jsoup.parse(html);
Element p= doc.select("p").first();
String text = doc.body().text(); //some bold text

или

String text = p.text(); //some bold text

Предположим, что у вас есть следующий сложный html

String html="<div id=someid><p>some text</p><span>some other text</span><p> another p tag</p></div>"

Чтобы получить значения из двух тегов p, вам нужно сделать что-то вроде этого

Document doc = Jsoup.parse(html);
Element content = doc.getElementById("someid");
Elements p= content.getElementsByTag("p");

String pConcatenated="";
for (Element x: p) {
  pConcatenated+= x.text();
}

System.out.println(pConcatenated);//sometext another p tag

Вы можете найти более подробную информацию здесь и

Надеюсь, что это помогло

Ответ 2

String testText1 = d.select("body").text();
System.out.println(testText);

или

String testText2 = d.select("body p").text();
System.out.println(testText);

Вы можете использовать это для получения текста из тегов.

Ответ 3

Попробуйте следующее:

File input = new File("/home/s5/Downloads/PDFCopy/PDs.html");
        Document doc = Jsoup.parse(input, "UTF-8","http://www.cisco.com/c/en/us/products/collateral/wireless/aironet-1815-series-access-points/datasheet-c78-738481.pdf");
        Elements link = doc.select("p");
        String linkText = link.text();
        //System.out.println(linkText);
        String[] words=linkText.split("\\W");
        for(String str:words) 
        {
            System.out.println(str);
        }
    }
}