Suchen Sie nach einer Empfehlung eines guten Tutorial über Best Practices für ein Web-Scraping-Projekt? [geschlossen]
-
22-08-2019 - |
Frage
Ich brauche ein ziemlich umfangreiches Projekt mit Web-Scraping zu tun und bin am überlegen Hpricot oder schöne Suppe mit (d Rubin- oder Python). Hat jemand über ein Tutorial gekommen, dass sie dachten, besonders gut zu diesem Thema war, das mir das Projekt auf dem rechten Fuß beginnen würde helfen?
Lösung
Es gibt eine ausgezeichnete Railscasts Folge auf ScrAPI.
Andere Tipps
Nicht ein Werkzeug, wirklich, aber eine gute Diskussion ist Buch Michael Shrenk, Webbots, Spiders und Screen-Scraper .
Das Buch gelingt es sehr gut in ihrem erklärten Ziel: zu erklären, wie ein einfachen Web-Bots erstellen und sie in Übereinstimmung mit Gemeinschaftsstandards arbeiten. Es ist nicht alles, was Sie wissen müssen, aber es ist die beste Einführung ich gesehen habe. Der Schwerpunkt liegt dabei auf einfachen, single-threaded, Bots. Es gibt einige kleine Erwähnung mehr Bots verwenden, die Daten in einem zentralen Repository gespeichert werden, aber es gibt keine Diskussion über die Probleme, die bei Multi-Threaded oder verteilen Bots zu schreiben, die Hunderte von Seiten pro Sekunde verarbeiten kann.
Ich empfehle, dass Sie dieses Buch lesen, wenn Sie überhaupt interessiert sind Web-Bots in schriftlicher Form, auch wenn Sie nicht vertraut sind mit oder beabsichtigen, PHP zu verwenden. Aber sicher sein, nicht mehr als das Buch Angebote zu erwarten.
Schauen Sie in mit lxml statt BeautifulSoup. Trotz seines Namens ist es auch für das Parsen und HTML Schaben. Es ist viel, viel schneller als BeautifulSoup, und es Griffe sogar „gebrochen“ HTML besser als BeautifulSoup (ihren Anspruch auf Ruhm - lxml ist einfach nicht so lautstark über sie). Es hat eine Kompatibilität API für BeautifulSoup auch, wenn Sie nicht die lxml API lernen wollen.
Es gibt keinen Grund BeautifulSoup mehr zu verwenden, es sei denn, Sie sind auf Google App Engine oder etwas, wo etwas nicht rein Python ist nicht erlaubt.
Werfen Sie einen Blick auf die folgenden Screencasts:
- http://railscasts.com/episodes/190-screen-scraping -mit-nokogiri
- http://railscasts.com/episodes/191-mechanize
Oder, wenn Sie mögen es einfach, die entsprechenden asciicasts:
Für Rubin, das Scrubyt Web-Scraping-Toolkit ist ausgezeichnet. Hier eine umfangreiche Einführung es, die noch lesenswert ist, wenn Sie ein anderes Werkzeug verwenden werden.