by JSOUP, get all parents a headline.
-
I have a hard copy.
<HTML xmlns:OG="http://opengraphprotocol.org/schema/" xmlns:FB="http://www.facebook.com/2008/fbml"> <style type="text/css"></style> <BODY> <DIV class="block0"> <DIV class="pad0"> <DIV class="fblock"> <DIV class="block61"> <DIV class="rpad"> <H1 class="title">Во Франции по подозрению в планировании теракта задержали двух девушек</H1> <SPAN class="dt2">Понедельник, 26 сентября 2016, 16:08</SPAN> <DIV class="text"> <P>Во французском городе Ницца по подозрению в планировании теракта были задержаны двое девушек.</P> <P>Об этом сообщает <A href="https://www.afp.com">AFP</A>.</P> <P>Девушки в возрасте 17 и 18 лет подозреваются в планировании террористического нападения под руководством французского джихадиста Рашида Кассима.</P> <P>Подростки рассказали следователям, что они планировали нападение под влиянием Рашида Кассима, который сейчас находится в Сирии или Ираке, на территории, которая контролируется террористической организацией "Исламское государство".</P> <P>Рашид Кассим, по мнению следователей, играет роль подстрекателя или спонсора, фактически призывая потенциальных террористов к совершению джихада во Франции.</P> <P>Стоит добавить, что во время обыска в помещениях, которые принадлежат задержанными, стражи порядка не нашли оружия.</P> <P>Издание отмечает, что девушки живут в том же районе, что и <A href="/rus/news/2016/07/15/7052184/">Мохамед Лахуайедж-Бухлель, убивший 86 человек</A> в Ницце 14 июля.</P> <P>Напомним, недавно французская <A href="/rus/news/2016/09/14/7054550/">полиция задержала подростка</A>, подозреваемого в подготовке теракта в Париже.</P> </DIV> <DIV class="btit4"><SPAN>ЧИТАЙ ТАКЖЕ</SPAN></DIV> </DIV> </DIV> </DIV> </DIV> </DIV> </BODY> </HTML>
With JSOUPa, I wanted to get all the "parents" headlines.
Element element = Jsoup.parse(html).getElementsByClass("title").parents().last(); System.out.println(element);
I got the same HTML in the console. But I only need to get the "parents" headline without any other tags like this:
<HTML xmlns:OG="http://opengraphprotocol.org/schema/" xmlns:FB="http://www.facebook.com/2008/fbml"> <BODY> <DIV class="block0"> <DIV class="pad0"> <DIV class="fblock"> <DIV class="block61"> <DIV class="rpad"> <H1 class="title">ЗАГОЛОВОК СТАТЬИ</H1> </DIV> </DIV> </DIV> </DIV> </DIV> </BODY> </HTML>
What can we do about it?
And the question is, how to find the title of the headline is that it's not called "title" but that's what's different from "head_article" because I'm gonna be on different websites.
-
Based on this example, it's simple:
- take the element in which the heading is
- Replace its contents with the html headline with the text (first descendant of the block)
String html = "<HTML xmlns:OG=\"http://opengraphprotocol.org/schema/\" xmlns:FB=\"http://www.facebook.com/2008/fbml\">\n" + " <style type=\"text/css\"></style>\n" + " <BODY>\n" + " <DIV class=\"block0\">\n" + " <DIV class=\"pad0\">\n" + " <DIV class=\"fblock\">\n" + " <DIV class=\"block61\">\n" + " <DIV class=\"rpad\">\n" + " <H1 class=\"title\">Во Франции по подозрению в планировании теракта задержали двух девушек</H1>\n" + " <SPAN class=\"dt2\">Понедельник, 26 сентября 2016, 16:08</SPAN>\n" + " <DIV class=\"text\">\n" + " <P>Во французском городе Ницца по подозрению в планировании теракта были задержаны двое девушек.</P>\n" + " <P>Об этом сообщает <A href=\"https://www.afp.com\">AFP</A>.</P>\n" + " <P>Девушки в возрасте 17 и 18 лет подозреваются в планировании террористического нападения под руководством французского джихадиста Рашида Кассима.</P>\n" + " <P>Подростки рассказали следователям, что они планировали нападение под влиянием Рашида Кассима, который сейчас находится в Сирии или Ираке, на территории, которая контролируется террористической организацией "Исламское государство".</P>\n" + " <P>Рашид Кассим, по мнению следователей, играет роль подстрекателя или спонсора, фактически призывая потенциальных террористов к совершению джихада во Франции.</P>\n" + " <P>Стоит добавить, что во время обыска в помещениях, которые принадлежат задержанными, стражи порядка не нашли оружия.</P>\n" + " <P>Издание отмечает, что девушки живут в том же районе, что и <A href=\"/rus/news/2016/07/15/7052184/\">Мохамед Лахуайедж-Бухлель, убивший 86 человек</A> в Ницце 14 июля.</P>\n" + " <P>Напомним, недавно французская <A href=\"/rus/news/2016/09/14/7054550/\">полиция задержала подростка</A>, подозреваемого в подготовке теракта в Париже.</P>\n" + " </DIV>\n" + " <DIV class=\"btit4\"><SPAN>ЧИТАЙ ТАКЖЕ</SPAN></DIV>\n" + " </DIV>\n" + " </DIV>\n" + " </DIV>\n" + " </DIV>\n" + " </DIV>\n" + " <DIV class=\"block0\">\n" + " <DIV class=\"pad0\">\n" + " <DIV class=\"fblock\">\n" + " <DIV class=\"block61\">\n" + " <DIV class=\"rpad\">\n" + " <H1 class=\"title\">Во Фsdfsdfsfх девушек</H1>\n" + " <SPAN class=\"dt2\">Понедельник, 26 сентября 2016, 16:08</SPAN>\n" + " <DIV class=\"btit4\"><SPAN>ЧИТАЙ ТАКЖЕ</SPAN></DIV>\n" + " </DIV>\n" + " </DIV>\n" + " </DIV>\n" + " </DIV>\n" + " </DIV>\n" + " </BODY>\n" + "</HTML>";
// загрузка html
Document document = Jsoup.parse(html);
// берем все элементы в который входит title
Elements els = document.select(".rpad");
// пробегаясь по всем ним, меняем внутри html
// child(0) - как раз html заголовка
for (Element el : els) {
el.html(el.child(0).toString());
}System.out.println(document);
This code will eventually lead.
<html xmlns:og="http://opengraphprotocol.org/schema/" xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
<style type="text/css"></style>
</head>
<body>
<div class="block0">
<div class="pad0">
<div class="fblock">
<div class="block61">
<div class="rpad">
<h1 class="title">Во Франции по подозрению в планировании теракта задержали двух девушек</h1>
</div>
</div>
</div>
</div>
</div>
<div class="block0">
<div class="pad0">
<div class="fblock">
<div class="block61">
<div class="rpad">
<h1 class="title">Во Фsdfsdfsfх девушек</h1>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
Without knowledge, the selection criterion with a constant variety of html, a constant different line for the heading, with a constant varying degree of fitness of the heading with a permanently different class (and the absence of a single) in the headline and in general any specific search criteria, can only be done by artificial intelligence