


Scrapy in Aktion: Daten zu Douban-Filmen durchsuchen und Beliebtheitsrankings bewerten
Scrapy ist ein Open-Source-Python-Framework zum schnellen und effizienten Scrapen von Daten. In diesem Artikel verwenden wir Scrapy, um die Daten zu crawlen und die Beliebtheit von Douban-Filmen zu bewerten.
- Vorbereitung
Zuerst müssen wir Scrapy installieren. Sie können Scrapy installieren, indem Sie den folgenden Befehl in die Befehlszeile eingeben:
pip install scrapy
Als nächstes erstellen wir ein Scrapy-Projekt. Geben Sie in der Befehlszeile den folgenden Befehl ein:
scrapy startproject doubanmovie
Dadurch wird ein Scrapy-Projekt namens doubanmovie erstellt. Anschließend gehen wir in das Projektverzeichnis und erstellen einen Spider namens douban.py. Geben Sie in der Befehlszeile den folgenden Befehl ein:
cd doubanmovie scrapy genspider douban douban.com
Jetzt haben wir einen Spider einsatzbereit. Als nächstes definieren wir das Verhalten der Spinne, um die erforderlichen Daten zu erhalten.
- Filmdaten crawlen
Wir werden Spider verwenden, um Douban-Filmdaten zu crawlen. Konkret erhalten wir folgende Informationen:
- Filmname
- Regisseur
- Schauspieler
- Genre
- Land
- Sprache
- Erscheinungsdatum
- Länge
- Bewertung
- Anzahl der Rezensionen ers
Open do uban .py-Datei hinzufügen, fügen wir den folgenden Code hinzu:
import scrapy class DoubanSpider(scrapy.Spider): name = 'douban' allowed_domains = ['douban.com'] start_urls = ['https://movie.douban.com/top250'] def parse(self, response): movie_list = response.xpath('//div[@class="item"]') for movie in movie_list: yield { 'name': movie.xpath('.//span[@class="title"]/text()').get(), 'director': movie.xpath('.//div[@class="bd"]/p/text()[1]').get(), 'actors': movie.xpath('.//div[@class="bd"]/p/text()[2]').get(), 'genre': movie.xpath('.//div[@class="bd"]/p/text()[3]').get(), 'country': movie.xpath('.//div[@class="bd"]/p/text()[4]').get(), 'language': movie.xpath('.//div[@class="bd"]/p/text()[5]').get(), 'release_date': movie.xpath('.//div[@class="bd"]/p/text()[6]').get(), 'duration': movie.xpath('.//div[@class="bd"]/p/text()[7]').get(), 'rating': movie.xpath('.//span[@class="rating_num"]/text()').get(), 'num_reviews': movie.xpath('.//div[@class="star"]/span[@class="rating_num"]/text()').get(), }
In diesem Code verwenden wir XPath, um die Informationen auszuwählen, die wir benötigen. Wir verwenden yield, um diese Informationen zu generieren und return, um sie an den Benutzer zurückzugeben.
Wenn wir jetzt unseren Spider ausführen (führen Sie den folgenden Befehl aus: scrapy crawl douban), crawlt er die Daten für die 250 besten Filme und gibt sie an die Befehlszeile zurück.
- Bewertungs-Beliebtheitsranking erhalten
Jetzt haben wir erfolgreich die Daten der 250 besten Filme erhalten. Als nächstes erhalten wir das Ranking ihrer Beliebtheitsbewertung.
Wir müssen zuerst einen neuen Spider erstellen, um die TOP250-Liste der Douban-Filme zu crawlen. Wir werden diese Liste verwenden, um die Rangfolge der Filme zu ermitteln.
In der Datei douban.py fügen wir den folgenden Code hinzu:
import scrapy class DoubanSpider(scrapy.Spider): name = 'douban' allowed_domains = ['douban.com'] start_urls = ['https://movie.douban.com/top250'] def parse(self, response): movie_list = response.xpath('//div[@class="item"]') for movie in movie_list: yield { 'name': movie.xpath('.//span[@class="title"]/text()').get(), 'director': movie.xpath('.//div[@class="bd"]/p/text()[1]').get(), 'actors': movie.xpath('.//div[@class="bd"]/p/text()[2]').get(), 'genre': movie.xpath('.//div[@class="bd"]/p/text()[3]').get(), 'country': movie.xpath('.//div[@class="bd"]/p/text()[4]').get(), 'language': movie.xpath('.//div[@class="bd"]/p/text()[5]').get(), 'release_date': movie.xpath('.//div[@class="bd"]/p/text()[6]').get(), 'duration': movie.xpath('.//div[@class="bd"]/p/text()[7]').get(), 'rating': movie.xpath('.//span[@class="rating_num"]/text()').get(), 'num_reviews': movie.xpath('.//div[@class="star"]/span[@class="rating_num"]/text()').get(), } next_page = response.xpath('//span[@class="next"]/a/@href') if next_page: url = response.urljoin(next_page[0].get()) yield scrapy.Request(url, callback=self.parse)
Im Code verwenden wir eine Variable namens next_page, um zu überprüfen, ob wir die letzte Seite erreicht haben. Wenn wir die letzte Seite noch nicht erreicht haben, crawlen wir weiter zur nächsten Seite.
Als nächstes müssen wir die Parse-Methode aktualisieren, um die Rangfolge des Films zu erhalten. Wir werden die Enumerate-Funktion von Python verwenden, um jedem Film eine Rangfolge zuzuordnen.
In der Datei douban.py ersetzen wir die ursprüngliche Parse-Methode durch:
def parse(self, response): movie_list = response.xpath('//div[@class="item"]') for i, movie in enumerate(movie_list): yield { 'rank': i + 1, 'name': movie.xpath('.//span[@class="title"]/text()').get(), 'director': movie.xpath('.//div[@class="bd"]/p/text()[1]').get(), 'actors': movie.xpath('.//div[@class="bd"]/p/text()[2]').get(), 'genre': movie.xpath('.//div[@class="bd"]/p/text()[3]').get(), 'country': movie.xpath('.//div[@class="bd"]/p/text()[4]').get(), 'language': movie.xpath('.//div[@class="bd"]/p/text()[5]').get(), 'release_date': movie.xpath('.//div[@class="bd"]/p/text()[6]').get(), 'duration': movie.xpath('.//div[@class="bd"]/p/text()[7]').get(), 'rating': movie.xpath('.//span[@class="rating_num"]/text()').get(), 'num_reviews': movie.xpath('.//div[@class="star"]/span[@class="rating_num"]/text()').get(), } next_page = response.xpath('//span[@class="next"]/a/@href') if next_page: url = response.urljoin(next_page[0].get()) yield scrapy.Request(url, callback=self.parse)
Wenn wir nun unseren Spider erneut ausführen, ruft er die Daten für die ersten 250 Filme ab und gibt sie an die Befehlszeile zurück. An dieser Stelle sehen wir die Rangliste aller Filme.
- Fazit
Scrapy ist ein sehr leistungsstarkes und flexibles Tool zum schnellen und effizienten Scrapen von Daten. In diesem Artikel haben wir Scrapy erfolgreich verwendet, um Douban-Filmdaten zu crawlen und Beliebtheitsrankings zu bewerten.
Wir verwenden Python-Code und XPath, um selektiv Informationen auf der Webseite abzurufen und verwenden Yield-Anweisungen, um sie an den Benutzer zurückzugeben. Während des gesamten Prozesses bietet Scrapy eine einfache und effektive Möglichkeit, große Datenmengen zu verwalten und zu crawlen, sodass wir Daten schnell analysieren und verarbeiten können.
Das obige ist der detaillierte Inhalt vonScrapy in Aktion: Daten zu Douban-Filmen durchsuchen und Beliebtheitsrankings bewerten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

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

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

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

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)

Heiße Themen



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

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 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 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.

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

Laut Nachrichten dieser Website vom 17. August wurde der Weltraumthriller „Alien: The Last Ship“ von 20th Century Pictures gestern (16. August) auf dem chinesischen Festland veröffentlicht. Der Douban-Score wurde heute mit 7,7 bekannt gegeben. Laut Echtzeitdaten von Beacon Professional Edition hat der Film am 17. August um 20:5 Uhr die 100-Millionen-Marke überschritten. Die Verteilung der Bewertungen auf dieser Seite ist wie folgt: 5 Sterne machen 20,9 % aus, 4 Sterne machen 49,5 % aus, 3 Sterne machen 25,4 % aus, 2 Sterne machen 3,7 % aus, 1 Sterne machen 0,6 % aus. „Alien: Death Ship“ wird produziert von 20th Century Pictures, als Produzent fungiert Ridley Scott, der Regisseur von „Blade Runner“ und „Prometheus“, Regie führte Fede Alvare, das Drehbuch schrieben Fede Alvare und Rodo Seiagues sowie Card Leigh Spaeny, Isabella Merced, Aileen Wu und Spike Fey
