В коде Java, как я могу извлечь текст случайной HTML-страницы? - PullRequest
0 голосов
/ 27 октября 2011

Я решил так:

String url = ("http://www.repubblica.it/economia/finanza/2011/10/27/news/la_fine_dell_incertezza_solleva_le_azioni_bancarie_in_borsa_alle_italiane_mancano_15_miliardi_di_capitale_met_di_unicredit-23967707/");

Document doc = Jsoup.parse(new URL(url), 2000);

Elements body = doc.select("body");

String s=body.text();

System.out.println(s);

У меня все еще есть другая проблема.Я просто хочу основной текст без заголовка.Кто может мне помочь?


Мне нужен алгоритм, который извлекает текст с веб-сайтов.Я хочу, чтобы этот текст был чист от тегов, классов и т. Д., И я хочу, чтобы этот алгоритм можно было применить к любой веб-странице.

Например, для эта страница

Мне нужен основной текст:

МИЛАНО - Il tanto conteso responseso sui fabbisogni di patrimonio delle maggiori banche europee è Arrivato.L'Eba (Национальная администрация по контролю за банками Европы) имеет постоянную потребность в поставках, entro giugno 2012, дирижабль на сумму 106,5 миллиарда евро за 30 центов Европы.Sui 70 gruppi Учитывать, Invece, il дефицит patrimoniale è di 160 милиард ...............

Для эта страница

Мне нужен основной текст:

ТОРИНО - Effetto Chrysler sui conti Fiat.Il Lingotto archivia il terzo trimestre con utili in crescita a 17,6 milardi (8,4 nello stesso trimestre 2010).Più che triplicato l'utile della gestione ordinaria che passa da 256 851 milioni.Из-за terzi Arrivano да Детройт че ................

Спасибо

Ответы [ 2 ]

2 голосов
/ 27 октября 2011

Я только что обнаружил Jsoup , и это выглядит просто идеально для того, что вы хотите

Кажется, что что-то вроде этих строк извлечет этот текст из "div_Id"

Document doc = Jsoup.connect("http://www.repubblica.it/economia/finanza/2011/10/27/news/la_fine_dell_incertezza_solleva_le_azioni_bancarie_in_borsa_alle_italiane_mancano_15_miliardi_di_capitale_met_di_unicredit-23967707/").get();
String text = doc.body().id("div_Id").text()

Я не эксперт по этой библиотеке, но на самом деле это намного проще, чем httpCommonsClient

2 голосов
/ 27 октября 2011

Попробуйте библиотеку шаблон .

Другой вариант - изучить Apache Tika , который будет индексировать контент осмысленным образом.

Обратите внимание, что определение "основного текста" в значительной степени невозможно. Если вы знаете сайт, вы можете попытаться понять их шаблон и сделать некоторые предположения. Сделать это на случайных сайтах сложно, и именно здесь в игру вступает что-то наподобие шаблонов / тика.

...