


Wie kann man mit Scrapy Douban-Bücher und deren Bewertungen und Kommentare crawlen?
Jun 22, 2023 am 10:21 AMMit der Entwicklung des Internets verlassen sich die Menschen zunehmend auf das Internet, um Informationen zu erhalten. Für Buchliebhaber ist Douban Books zu einer unverzichtbaren Plattform geworden. Darüber hinaus bietet Douban Books eine Fülle von Buchbewertungen und Rezensionen, die es den Lesern erm?glichen, ein Buch umfassender zu verstehen. Das manuelle Abrufen dieser Informationen ist jedoch gleichbedeutend mit der Suche nach der Nadel im Heuhaufen. Zu diesem Zeitpunkt k?nnen wir die Daten mit dem Scrapy-Tool crawlen.
Scrapy ist ein auf Python basierendes Open-Source-Webcrawler-Framework, das uns hilft, Daten effizient von Websites zu extrahieren. In diesem Artikel werde ich mich auf die Schritte konzentrieren und im Detail vorstellen, wie man mit Scrapy Douban-Bücher und deren Bewertungen und Kommentare crawlt.
Schritt 1: Scrapy installieren
Zuerst müssen Sie Scrapy auf Ihrem Computer installieren. Wenn Sie pip (Python-Paketverwaltungstool) installiert haben, müssen Sie nur den folgenden Befehl im Terminal oder in der Befehlszeile eingeben:
pip install scrapy
Auf diese Weise wird Scrapy auf Ihrem Computer installiert. Wenn ein Fehler oder eine Warnung auftritt, wird empfohlen, entsprechend den Anweisungen entsprechende Anpassungen vorzunehmen.
Schritt 2: Erstellen Sie ein neues Scrapy-Projekt
Als n?chstes müssen wir den folgenden Befehl im Terminal oder in der Befehlszeile eingeben, um ein neues Scrapy-Projekt zu erstellen:
scrapy startproject douban
Dieser Befehl erstellt einen Ordner namens douban im aktuellen Verzeichnis. Es enth?lt die grundlegende Datei- und Verzeichnisstruktur von Scrapy.
Schritt 3: Schreiben Sie ein Crawler-Programm
In Scrapy müssen wir ein Crawler-Programm schreiben, um Scrapy mitzuteilen, wie Daten von der Website extrahiert werden sollen. Daher müssen wir eine neue Datei mit dem Namen douban_spider.py
erstellen und den folgenden Code schreiben: douban_spider.py
的文件,并編寫如下代碼:
import scrapy class DoubanSpider(scrapy.Spider): name = 'douban' allowed_domains = ['book.douban.com'] start_urls = ['https://book.douban.com/top250'] def parse(self, response): selector = scrapy.Selector(response) books = selector.xpath('//tr[@class="item"]') for book in books: title = book.xpath('td[2]/div[1]/a/@title').extract_first() author = book.xpath('td[2]/div[1]/span[1]/text()').extract_first() score = book.xpath('td[2]/div[2]/span[@class="rating_nums"]/text()').extract_first() comment_count = book.xpath('td[2]/div[2]/span[@class="pl"]/text()').extract_first() comment_count = comment_count.strip('()') yield {'title': title, 'author': author, 'score': score, 'comment_count': comment_count}
上面的代碼實現(xiàn)了兩個功能:
- 爬取豆瓣圖書 top250 頁面中的書籍標題、作者、評分和評論數(shù)。
- 將爬取到的數(shù)據(jù)以字典的形式返回。
在這個程序中,我們首先需要定義一個 DoubanSpider
類,并指定爬蟲的名稱、允許爬蟲訪問的域名和起始 URL。在 parse
方法中,我們通過 scrapy.Selector
對象進行 HTML 頁面解析,并使用 XPath 表達式獲取書籍的相關(guān)信息。
獲取數(shù)據(jù)后,我們使用 yield
關(guān)鍵字將數(shù)據(jù)以字典的形式返回。這里的 yield
關(guān)鍵字的作用是將函數(shù)變成一個生成器,實現(xiàn)一次返回一個數(shù)據(jù)的效果。在 Scrapy 中,我們可以通過定義生成器的方式,實現(xiàn)對網(wǎng)站數(shù)據(jù)的高效抓取。
第四步:運行爬蟲程序
在編寫完爬蟲程序后,我們需要在終端或命令行中運行以下代碼來啟動爬蟲程序:
scrapy crawl douban -o result.json
這個指令的作用是啟動名為 douban
rrreee
- Crawling der 250 besten Douban-Bücher Titel, Autor, Bewertung und Anzahl der Rezensionen auf der Seite.
- Geben Sie die gecrawlten Daten in Form eines W?rterbuchs zurück.
DoubanSpider
-Klasse definieren und den Namen des Crawlers, den Dom?nennamen und die Start-URL angeben, auf die der Crawler zugreifen darf. In der Methode parse
analysieren wir die HTML-Seite über das Objekt scrapy.Selector
und verwenden XPath-Ausdrücke, um relevante Informationen über das Buch zu erhalten. Nachdem wir die Daten erhalten haben, verwenden wir das Schlüsselwort yield
, um die Daten in Form eines W?rterbuchs zurückzugeben. Das Schlüsselwort yield
wird hier verwendet, um die Funktion in einen Generator umzuwandeln, um den Effekt zu erzielen, dass jeweils nur ein Datenwert zurückgegeben wird. In Scrapy k?nnen wir durch die Definition von Generatoren ein effizientes Crawling von Website-Daten erreichen. ????Schritt 4: Führen Sie das Crawler-Programm aus????Nachdem wir das Crawler-Programm geschrieben haben, müssen wir den folgenden Code im Terminal oder in der Befehlszeile ausführen, um das Crawler-Programm zu starten: ??rrreee??Die Funktion dieses Befehls besteht darin, das Crawler-Programm zu starten mit dem Namen douban und geben Sie die gecrawlten Daten im JSON-Format in die Datei result.json aus. ????Durch die oben genannten vier Schritte k?nnen wir Douban-Bücher und ihre Bewertungen und Rezensionsinformationen erfolgreich crawlen. Wenn Sie die Effizienz und Stabilit?t des Crawler-Programms weiter verbessern m?chten, müssen Sie natürlich auch einige andere Optimierungen und Anpassungen vornehmen. Zum Beispiel: Verz?gerungszeit einstellen, Anti-Crawling-Mechanismus verhindern usw. ????Kurz gesagt ist die Verwendung von Scrapy zum Crawlen von Douban-Büchern und deren Bewertungen und Rezensionsinformationen eine relativ einfache und interessante Aufgabe. Wenn Sie sich für Daten-Crawling und Python-Programmierung interessieren, k?nnen Sie das Daten-Crawling auch auf anderen Websites ausprobieren, um Ihre Programmierkenntnisse zu verbessern. ??
Das obige ist der detaillierte Inhalt vonWie kann man mit Scrapy Douban-Bücher und deren Bewertungen und Kommentare crawlen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Einleitung Letzte Woche habe ich eine Einleitung über das Scrapen von Webseiten zum Sammeln von Metadaten geschrieben und erw?hnt, dass es unm?glich sei, die Website der New York Times zu scrapen. Die Paywall der New York Times blockiert Ihre Versuche, grundlegende Metadaten zu sammeln. Aber es gibt eine M?glichkeit, dieses Problem mithilfe der New York Times API zu l?sen. Vor kurzem habe ich mit dem Aufbau einer Community-Website auf der Yii-Plattform begonnen, die ich in einem zukünftigen Tutorial ver?ffentlichen werde. Ich m?chte in der Lage sein, problemlos Links hinzuzufügen, die für den Inhalt der Website relevant sind. W?hrend Benutzer URLs problemlos in Formulare einfügen k?nnen, ist die Bereitstellung von Titel- und Quelleninformationen zeitaufw?ndig. Deshalb werde ich im heutigen Tutorial den Scraping-Code, den ich kürzlich geschrieben habe, erweitern, um die New York Times-API zum Sammeln von Schlagzeilen zu nutzen, wenn ich einen Link zur New York Times hinzufüge. Denken Sie daran, ich bin involviert

Scrapy implementiert das Crawlen von Artikeln und die Analyse ?ffentlicher WeChat-Konten. WeChat ist in den letzten Jahren eine beliebte Social-Media-Anwendung, und die darin betriebenen ?ffentlichen Konten spielen ebenfalls eine sehr wichtige Rolle. Wie wir alle wissen, sind ?ffentliche WeChat-Konten ein Ozean an Informationen und Wissen, da jedes ?ffentliche Konto Artikel, grafische Nachrichten und andere Informationen ver?ffentlichen kann. Diese Informationen k?nnen in vielen Bereichen umfassend genutzt werden, beispielsweise in Medienberichten, in der akademischen Forschung usw. In diesem Artikel erfahren Sie, wie Sie das Scrapy-Framework zum Crawlen und Analysieren von WeChat-Artikeln zu ?ffentlichen Konten verwenden. Scr

Wie stelle ich den Englischmodus in der Douban-App ein? Die Douban-App ist eine Software, mit der Sie Bewertungen verschiedener Ressourcen anzeigen k?nnen. Diese Software verfügt über viele Funktionen. Wenn Benutzer diese Software zum ersten Mal verwenden, müssen sie sich anmelden. Die Standardsprache dieser Software ist für einige Benutzer verwenden gerne den englischen Modus, wissen jedoch nicht, wie sie den englischen Modus in dieser Software einstellen sollen. Der folgende Editor hat die Methode zum Einstellen des englischen Modus als Referenz zusammengestellt. So stellen Sie den Englischmodus in der Douban-App ein: 1. ?ffnen Sie die ?Douban“-App auf Ihrem Telefon. 2. Klicken Sie auf ?Mein“ 3. W?hlen Sie ?Einstellungen“ in der oberen rechten Ecke.

Scrapy ist ein Open-Source-Python-Crawler-Framework, das schnell und effizient Daten von Websites abrufen kann. Viele Websites verwenden jedoch die asynchrone Ladetechnologie von Ajax, was es Scrapy unm?glich macht, Daten direkt abzurufen. In diesem Artikel wird die Scrapy-Implementierungsmethode basierend auf dem asynchronen Laden von Ajax vorgestellt. 1. Ajax-Prinzip des asynchronen Ladens Ajax-Asynchronladen: Bei der herk?mmlichen Seitenlademethode muss der Browser, nachdem er eine Anfrage an den Server gesendet hat, darauf warten, dass der Server eine Antwort zurückgibt und die gesamte Seite l?dt, bevor er mit dem n?chsten Schritt fortf?hrt.

Scrapy ist ein Python-basiertes Crawler-Framework, mit dem schnell und einfach relevante Informationen im Internet abgerufen werden k?nnen. In diesem Artikel analysieren wir anhand eines Scrapy-Falls im Detail, wie Unternehmensinformationen auf LinkedIn gecrawlt werden. Bestimmen Sie die Ziel-URL. Zun?chst müssen wir klarstellen, dass unser Ziel die Unternehmensinformationen auf LinkedIn sind. Daher müssen wir die URL der LinkedIn-Unternehmensinformationsseite finden. ?ffnen Sie die LinkedIn-Website, geben Sie den Firmennamen in das Suchfeld ein und

Wie kann ich Daten durch Aufrufen der API-Schnittstelle in einem PHP-Projekt crawlen und verarbeiten? 1. Einführung In PHP-Projekten müssen wir h?ufig Daten von anderen Websites crawlen und diese Daten verarbeiten. Viele Websites bieten API-Schnittstellen, und wir k?nnen Daten durch Aufrufen dieser Schnittstellen abrufen. In diesem Artikel wird erl?utert, wie Sie mit PHP die API-Schnittstelle zum Crawlen und Verarbeiten von Daten aufrufen. 2. Ermitteln Sie die URL und die Parameter der API-Schnittstelle. Bevor Sie beginnen, müssen Sie die URL der Ziel-API-Schnittstelle und die erforderlichen Parameter ermitteln.

Scrapy ist ein leistungsstarkes Python-Crawler-Framework, mit dem gro?e Datenmengen aus dem Internet abgerufen werden k?nnen. Bei der Entwicklung von Scrapy sto?en wir jedoch h?ufig auf das Problem, doppelte URLs zu crawlen, was viel Zeit und Ressourcen verschwendet und die Effizienz beeintr?chtigt. In diesem Artikel werden einige Scrapy-Optimierungstechniken vorgestellt, um das Crawlen doppelter URLs zu reduzieren und die Effizienz von Scrapy-Crawlern zu verbessern. 1. Verwenden Sie die Attribute ?start_urls“ und ?allowed_domains“ im Scrapy-Crawler

Scrapy ist ein leistungsstarkes Python-Crawler-Framework, mit dem wir schnell und flexibel Daten im Internet abrufen k?nnen. Beim eigentlichen Crawling-Prozess sto?en wir h?ufig auf verschiedene Datenformate wie HTML, XML und JSON. In diesem Artikel stellen wir vor, wie man Scrapy zum Crawlen dieser drei Datenformate verwendet. 1. HTML-Daten crawlen und ein Scrapy-Projekt erstellen. Zuerst müssen wir ein Scrapy-Projekt erstellen. ?ffnen Sie die Befehlszeile und geben Sie den folgenden Befehl ein: scrapys
