2010-11-09 11 views
11

Qual è la tua raccomandazione di scrivere un web crawler in Ruby? Qualche lib meglio di meccanizzare?Web crawler in ruby ​​

+2

Meglio in che modo? –

+0

Mechanize è un ottimo strumento se devi navigare in un sito web, compilare moduli, autenticare, ecc. Non è un ragno perché devi dire come fare tutto. Non ho provato Anemone ma le sue caratteristiche sembrano buone. Qualunque cosa tu faccia, assicurati di onorare il file 'robots.txt' sul sito in cui stai correndo, o riduci il codice. I ragni maleducati possono farti bandito. Scrivere un ragno non è così difficile; Ho scritto più di quanto possa ricordare. Scrivendo uno che è un buon cittadino ed è robusto è un compito più grande, quindi se possibile, vai con una ruota precostruita. –

+0

Consiglierei di guardare "[Quali sono alcuni buoni web crawler basati su Ruby?] (Http://stackoverflow.com/questions/4981379/what-are-some-good-ruby-based-web-crawlers/4981595) " –

risposta

25

Proverei a anemone. È semplice da usare, soprattutto se devi scrivere un semplice crawler. A mio parere, è ben progettato anche. Ad esempio, ho scritto uno script rubino per cercare 404 errori sui miei siti in un tempo molto breve.

+0

Dovresti pubblicare un suggerimento su questo perché presto implementerò la stessa funzionalità. Altri probabilmente lo userebbero pure. – cha55son

5

Si potrebbe voler controllare wombat che è stato costruito su Mechanize/Nokogiri e fornisce un DSL (ad esempio Sinatra, ad esempio) per analizzare le pagine. Abbastanza carino :)

1

Sto lavorando a pioneer gem che non è un ragno, ma un semplice crawler asincrono basa sulla em-synchrony gem

+1

Il meglio che posso dire, "web spider" e "web crawler" sono sinonimi. –

+0

L'inglese non è la mia lingua madre, quindi posso sbagliarmi, ma a me sembra che il crawler sia qualcosa di più generale del ragno. Spider è una specie di materiale completo: naviga ricorsivamente attraverso i link. E il pioniere è più simile a un piccolo quadro. Puoi scrivere il tuo ragno con pioniere e puoi fare di più;). Ma devi fare più lavoro manualmente, usare il pioniere ma è più agile. – fl00r

+1

Secondo [Wikipedia] (http://en.wikipedia.org/wiki/Web_crawler): "Altri termini per i crawler Web sono formiche, indicizzatori automatici, robot, Web spider, robot Web ..." Ciò corrisponde al [Sinonimi StackOverflow per il web crawler] (http://stackoverflow.com/tags/web-crawler/synonyms). –

0

Ho appena rilasciato una recente chiamato Klepto. Ha una DSL piuttosto semplice, è costruita su capibara e ha molte opzioni di configurazione interessanti.

+2

Sarebbe bello se tu potessi espandere la tua risposta e spiegare di più su queste fantastiche opzioni e perché la tua biblioteca è migliore per l'attività. Fai attenzione anche quando pubblichi link ai tuoi progetti, la community può vederli come un po 'spammy. – Kev

Problemi correlati