Qual è la tua raccomandazione di scrivere un web crawler in Ruby? Qualche lib meglio di meccanizzare?Web crawler in ruby
risposta
Se si desidera solo ottenere il contenuto delle pagine, il modo più semplice è utilizzare le funzioni open-uri
. Non richiedono gemme aggiuntive. Non vi resta che require 'open-uri'
e ... http://ruby-doc.org/stdlib-2.2.2/libdoc/open-uri/rdoc/OpenURI.html
per analizzare il contenuto è possibile utilizzare Nokogiri o di altre gemme, che possono anche avere, per esempio, utile XPATH -tecnologia. È possibile trovare altre librerie di parsing just here on SO.
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.
Dovresti pubblicare un suggerimento su questo perché presto implementerò la stessa funzionalità. Altri probabilmente lo userebbero pure. – cha55son
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 :)
Sto lavorando a pioneer gem che non è un ragno, ma un semplice crawler asincrono basa sulla em-synchrony gem
Il meglio che posso dire, "web spider" e "web crawler" sono sinonimi. –
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
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). –
Ho appena rilasciato una recente chiamato Klepto. Ha una DSL piuttosto semplice, è costruita su capibara e ha molte opzioni di configurazione interessanti.
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
- 1. Semplice web crawler in C#
- 2. Ruby, Mongodb, Anemone: web crawler con possibili perdite di memoria?
- 3. Web crawler - seguenti link
- 4. Tor Web Crawler
- 5. Expert F # esempio web crawler
- 6. Crea un web crawler/spider
- 7. Web crawler in grado di interpretare JavaScript
- 8. Miglior crawler grafico web per la velocità?
- 9. Come mantenere attivo un crawler web?
- 10. Web Crawler - Ignora il file Robots.txt?
- 11. Esiste un elenco di web crawler conosciuti?
- 12. Come posso gestire Javascript in un web crawler Perl?
- 13. Come può un web crawler Perl seguire un postback ASP.NET?
- 14. Protezione degli indirizzi e-mail da bot spam/web crawler
- 15. Etichetta corretta per le richieste HTTP del crawler Web
- 16. Python Web Crawler e codice sorgente "get" sorgente
- 17. Quali librerie di web crawler PHP sono disponibili?
- 18. Qualcuno conosce un buon web crawler open source estendibile?
- 19. Tipico fattore di cortesia per un web crawler?
- 20. Facebook Crawler Bot Sito in crash
- 21. Plug-in Ruby per browser web?
- 22. Qual è il miglior strumento per crawler web Open Source scritto in Java?
- 23. Utilizzare il crawler nel controller
- 24. Come progettare un crawler bot?
- 25. Come gestire? _escaped_fragment_ = per i crawler AJAX?
- 26. Come posso creare un semplice crawler in PHP?
- 27. Qual è la durata ottimale per un web crawler di attendere tra richieste ripetute su un server web
- 28. Come convertire una stringa in UTF8 in Ruby
- 29. Qual è la lingua di programma ideale per un web crawler?
- 30. Quale tipo di host Web consente di eseguire crawler su di esso?
Meglio in che modo? –
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. –
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) " –