Domanda

Vorrei analizzare una pagina html e estrarre il testo significativo da esso. Chiunque conosce alcuni buoni algoritmi per fare questo?

I sviluppare le mie applicazioni on Rails, ma credo che Ruby è un po 'lento in questo, quindi penso che se esiste qualche libreria buono in c per questo sarebbe opportuno.

Grazie !!

PD: Si prega di non raccomandare nulla con java

UPDATE: Ho trovato questo testo del link

Purtroppo, è in python

È stato utile?

Soluzione

Nokogiri , che è veloce e scritto in C , per Ruby.

(Utilizzo di espressioni regolari per analizzare le espressioni ricorsive come HTML è notoriamente difficile e soggetto a errori e non vorrei andare giù quel percorso . cito solo questo nella risposta in quanto questo problema sembra sorgere ancora e ancora.)

Con un vero e proprio analizzatore come per esempio Nokogiri di cui sopra, si ottiene anche il vantaggio che la struttura e la logica del documento HTML è conservato, e, a volte si ha realmente bisogno di questi indizi.

Altri suggerimenti

Soluzioni che integrano con Ruby

Soluzioni esterne

Lynx è in grado di fare questo. Questo è open source, se si vuole dare un'occhiata a questo.

Si dovrebbe togliere tutto parte ad angolo tra parentesi dal testo e poi crollare bianchi-spazi. In teoria il < e > non dovrebbero essere lì in altri casi. Pagine contengono &lt; e &gt; ovunque al loro posto.

Collapsing spaziature:. Convertire tutti i TAB, ritorno a capo, ecc per gli spazi, quindi sostituire ogni sequenza di spazi in un singolo spazio

UPDATE:. E si dovrebbe iniziare dopo aver trovato il tag <body>

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top