Wie kann ich mit Scrapy Kugou Music-Songs crawlen?
Mit der Entwicklung des Internets nimmt die Informationsmenge im Internet zu und die Menschen müssen Informationen von verschiedenen Websites crawlen, um verschiedene Analysen und Mining durchzuführen. Scrapy ist ein voll funktionsfähiges Python-Crawler-Framework, das Website-Daten automatisch crawlen und in strukturierter Form ausgeben kann. Kugou Music ist eine der beliebtesten Online-Musikplattformen. Im Folgenden werde ich vorstellen, wie man Scrapy zum Crawlen der Songinformationen von Kugou Music verwendet.
1. Scrapy installieren
Scrapy ist ein Framework, das auf der Python-Sprache basiert, daher müssen Sie zuerst die Python-Umgebung konfigurieren. Bevor Sie Scrapy installieren, müssen Sie zuerst die Python- und Pip-Tools installieren. Nachdem die Installation abgeschlossen ist, können Sie Scrapy über den folgenden Befehl installieren:
pip install scrapy
2. Erstellen Sie ein neues Scrapy-Projekt.
Scrapy bietet eine Reihe von Befehlszeilentools, die uns das Erstellen neuer Projekte erleichtern. Geben Sie den folgenden Code in die Befehlszeile ein:
scrapy startproject kuwo_music
Nach der Ausführung wird im aktuellen Verzeichnis ein Scrapy-Projekt mit dem Namen „kuwo_music“ erstellt. In diesem Projekt müssen wir einen neuen Crawler erstellen, um die Songinformationen von Kugou Music zu crawlen.
3. Erstellen Sie einen neuen Crawler
Im Scrapy-Projekt ist ein Crawler ein Programm, das zum Crawlen und Analysieren von Daten auf einer bestimmten Website verwendet wird. Führen Sie im Projektverzeichnis „kuwo_music“ den folgenden Befehl aus:
scrapy genspider kuwo www.kuwo.cn
Der obige Befehl erstellt eine Datei mit dem Namen „kuwo.py“ im Verzeichnis „kuwo_music/spiders“, bei der es sich um unseren Crawler-Programmcode handelt. Wir müssen den Crawling- und Parsing-Prozess der Website-Daten in dieser Datei definieren.
4. Website-Anfrage und Seitenanalyse
In der neuen Datei „kuwo.py“ müssen Sie zunächst die erforderlichen Module importieren:
import scrapy from kuwo_music.items import KuwoMusicItem from scrapy_redis.spiders import RedisSpider from scrapy_redis import get_redis_from_settings from scrapy.utils.project import get_project_settings
Über den obigen Code können wir verschiedene von Scrapy bereitgestellte Toolklassen verwenden Framework und Methoden sowie benutzerdefinierte Module im Projekt. Bevor wir mit dem Schreiben des Crawler-Codes fortfahren, müssen wir zunächst die Webseite analysieren, auf der sich die Songinformationen von Kugou Music befinden.
Öffnen Sie den Browser, besuchen Sie www.kuwo.cn, geben Sie den Songnamen in die Suchleiste ein und suchen Sie. Sie werden feststellen, dass die Webseite zur Suchergebnisseite springt. Auf der Suchergebnisseite können Sie relevante Informationen zu jedem Song sehen, wie Songname, Interpret, Spielzeit usw. Wir müssen eine Anfrage über Scrapy senden und die Suchergebnisseite analysieren, um detaillierte Informationen zu jedem Song zu erhalten.
Im Crawler-Code müssen wir die folgenden zwei Methoden implementieren:
def start_requests(self): ... def parse(self, response): ...
Unter diesen wird die Methode start_requests() zum Senden der ersten Webseitenanforderung verwendet, und die Analysemethode parse() wird als Rückruffunktion bezeichnet ; während die parse()-Methode zum Parsen von Webseiten, zum Extrahieren von Daten und zum Verarbeiten von Antworten verwendet wird. Der spezifische Code lautet wie folgt:
class KuwoSpider(RedisSpider): name = 'kuwo' allowed_domains = ['kuwo.cn'] redis_cli = get_redis_from_settings(get_project_settings()) def start_requests(self): keywords = ['爱情', '妳太善良', '说散就散'] # 搜索结果页面的url for keyword in keywords: url = f'http://www.kuwo.cn/search/list?key={keyword}&rformat=json&ft=music&encoding=utf8&rn=8&pn=1' yield scrapy.Request(url=url, callback=self.parse) def parse(self, response): data = json.loads(response.text) # 获取搜索结果页面的每个歌曲信息 song_list = data['data']['list'] for song in song_list: music_id = song['musicrid'][6:] song_name = song['name'] singer_name = song['artist'] album_name = song['album'] # 根据歌曲id获取歌曲详细信息 url = f'http://www.kuwo.cn/url?format=mp3&rid=MUSIC_{music_id}&response=url&type=convert_url3&br=128kmp3&from=web&t=1639056420390&httpsStatus=1&reqId=6be77da1-4325-11ec-b08e-11263642326e' meta = {'song_name': song_name, 'singer_name': singer_name, 'album_name': album_name} yield scrapy.Request(url=url, callback=self.parse_song, meta=meta) def parse_song(self, response): item = KuwoMusicItem() item['song_name'] = response.meta.get('song_name') item['singer_name'] = response.meta.get('singer_name') item['album_name'] = response.meta.get('album_name') item['song_url'] = response.text.strip() yield item
Im obigen Code definieren wir zunächst die zu durchsuchenden Song-Schlüsselwörter in der Methode start_requests(), erstellen die URL jeder Song-Suchergebnisseite und senden die Anfrage. In der parse()-Methode analysieren wir die Suchergebnisseite und extrahieren relevante Informationen zu jedem Song, einschließlich Songname, Interpret, Album usw. Anschließend erstellen wir basierend auf der ID jedes Songs eine URL, um die entsprechenden Songinformationen abzurufen, und verwenden den Metadatenmechanismus (Meta) von Scrapy, um Songnamen, Sänger, Album und andere Informationen zu übertragen. Schließlich analysieren wir die Song-Informationsseite, extrahieren die Song-Wiedergabeadresse in der Methode parse_song() und geben sie an das benutzerdefinierte KuwoMusicItem-Objekt aus.
5. Datenspeicherung und -nutzung
Im obigen Code definieren wir ein benutzerdefiniertes KuwoMusicItem-Objekt, um die gecrawlten Songinformationen zu speichern. Wir können die Tool-Klasse RedisPipeline verwenden, um die gecrawlten Daten in der Redis-Datenbank zu speichern:
ITEM_PIPELINES = { 'kuwo_music.pipelines.RedisPipeline': 300, }
Gleichzeitig können wir auch die Tool-Klasse JsonLinesItemExporter verwenden, um die Daten in einer lokalen CSV-Datei zu speichern:
from scrapy.exporters import JsonLinesItemExporter import csv class CsvPipeline(object): # 将数据存储到csv文件 def __init__(self): self.file = open('kuwo_music.csv', 'w', encoding='utf-8', newline='') self.exporter = csv.writer(self.file) self.exporter.writerow(['song_name', 'singer_name', 'album_name', 'song_url']) def close_spider(self, spider): self.file.close() def process_item(self, item, spider): self.exporter.writerow([item['song_name'], item['singer_name'], item['album_name'], item['song_url']]) return item
Führen Sie sie schließlich aus In der Befehlszeile kann der folgende Befehl den Scrapy-Crawler starten:
scrapy crawl kuwo
Das Obige ist eine detaillierte Einführung in die Verwendung des Scrapy-Frameworks zum Crawlen der Songinformationen von Kugou Music.
Das obige ist der detaillierte Inhalt vonWie kann ich mit Scrapy Kugou Music-Songs crawlen?. 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

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)

Heiße Themen





Wie kann ich die automatische Verlängerung der Mitgliedschaft in der Kugou Music APP abbrechen? Es gibt viele Benutzer, die sich für den automatischen VIP-Verlängerungsdienst von Kugou Music beworben haben. Später möchten sie diesen Dienst kündigen, wissen aber nicht, wo sie ihn kündigen können -Erneuerung von Kugou Music. Es ist ganz einfach, die automatische Verlängerung in der Kugou Music APP abzubrechen: Gehen Sie einfach ins Mitgliedercenter, suchen Sie nach der Option „Musikpaket/Luxus-VIP“, wählen Sie „Automatische Verlängerung aktiviert“ und klicken Sie dann, um die Verlängerung zu schließen. 2. WeChat: Gehen Sie wie im Bild unten gezeigt zur Zahlungsseite, klicken Sie auf die drei Punkte in der oberen rechten Ecke, wählen Sie den Abzugsdienst aus und klicken Sie auf Kugou Music, um den Dienst zu schließen. 3. Alipay: Gehen Sie zur Einstellungsseite. Wählen Sie Zahlungseinstellungen und wählen Sie passwortfreie Zahlung/Gebühren automatisch abziehen und wählen Sie schließlich Kugou Music, um den Vertrag zu kündigen.

Die Kugou Music App-Software bietet eine große Anzahl offiziell autorisierter Musiklieder. Sie können sie jederzeit und überall kostenlos anhören und die wunderschönen Lieder hallen in Ihren Ohren wider. Es unterstützt Online-Downloads für Mobiltelefonbenutzer verschiedener Systeme. Sie können sich anmelden, indem Sie Ihr Konto und Ihr Passwort eingeben. Sie können sie auch durch Eingabe des Songtitels finden Verschiedene Soundeffektmodi sorgen für eine noch intensivere Höratmosphäre. Sie können den Panorama-Viper-Soundeffekt auch ausschalten und den Hörmodus in anderen Situationen frei erleben, exklusive Musikwiedergabelisten anpassen und erstellen, Musiklinks online teilen und vieles mehr Lassen Sie Ihre Stimmung los. Jetzt stellt der Editor den Kugou Music-Benutzern online Details zur Verfügung. Schritte zum Ausschalten von Viper Atmos. 1. Öffnen Sie Kugou Music und betreten Sie den Hauptbereich von Kugou Music

1. Öffnen Sie Kugou Music und klicken Sie auf Ihr Profilbild. 2. Klicken Sie auf das Symbolset in der oberen rechten Ecke. 3. Klicken Sie auf [Musikwerke hochladen]. 4. Klicken Sie auf [Werke hochladen]. 5. Wählen Sie das Lied aus und klicken Sie auf [Weiter]. 6. Klicken Sie abschließend auf [Hochladen].

1. Ein Kugou Music-Mitgliedskonto kann auf bis zu [fünf Geräten] verwendet werden, einschließlich Mobiltelefonen, Computern, Tablets usw. 2. Das gleiche Konto kann jedoch nur auf [zwei Geräten] gleichzeitig innerhalb desselben Zeitraums verwendet werden. 3. Wenn sich gleichzeitig ein drittes Gerät anmeldet, meldet sich das erste Gerät automatisch ab.

1. Öffnen Sie die Kugou Music-App, klicken Sie auf [Mein], wählen Sie [Mitgliedercenter] und rufen Sie die Benutzeroberfläche des Mitgliedercenters auf. 2. Klicken Sie unten in der Benutzeroberfläche auf [Mitgliedseinstellungen] und deaktivieren Sie den Schalter [Automatische Verlängerung]. 3. Klicken Sie im Popup-Fenster auf die Schaltfläche [OK], um zu bestätigen, dass die automatische Verlängerung deaktiviert ist. 4. Zu diesem Zeitpunkt hat der Benutzer die automatische Mitgliedschaftsverlängerungsfunktion von Kugou Music erfolgreich deaktiviert.

Kugou Music ist eine beliebte Musik-Player-Software und auch die Song-Download-Funktion erfreut sich bei Nutzern großer Beliebtheit. Wenn jedoch Caching erforderlich ist, wissen viele Benutzer möglicherweise nicht, wie sie das Download-Verzeichnis für Songs festlegen, was es schwierig macht, heruntergeladene Musikdateien zu verwalten und zu finden. Wie kann man also den Download-Speicherort in Kugou Music ändern? Die folgende Anleitung bietet Ihnen eine detaillierte Einführung in die Schritte zum Ändern des Cache-Speicherorts. Ich hoffe, dass sie denjenigen helfen kann, die es noch nicht wissen. So legen Sie den Download-Pfad für Kugou Music fest: 1. Öffnen Sie die Kugou Music-App und klicken Sie unten rechts auf „Mein“. 2. Klicken Sie auf das Symbol mit den drei horizontalen Linien in der oberen rechten Ecke. 3. Klicken Sie auf das Song-Download-Verzeichnis und geben Sie die Einstellungen ein.

Gibt es eine Musiksoftware, die alle Songs kostenlos abspielen kann? Mit einer Song-Listening-Software können Sie alle Songs kostenlos auf Kugou Music, QQ Music, NetEase Cloud Music, Migu Music und Kuwo Music anhören. „Kugou Music“: Als eine der ersten Musiksoftwares bietet Kugou Music wirklich viele spannende Inhalte. Egal welche Art von Titeln Sie hören möchten, Musik hören ist eine gute Möglichkeit, sich zu entspannen. Die Software „KuWo Music“ enthält eine relativ große Anzahl von Titeln einiger sehr beliebter Musikprogramme. Alle Downloads sind sehr garantiert und erfreuen sich im Laufe der Jahre großer Beliebtheit. „Love Music“ ist eine sehr praktische kostenlose Musik-Hörsoftware. Hier gibt es eine breite Palette an Original-Songs, die Benutzer nach ihren Vorlieben frei durchsuchen können

Kugou-Musik kann uns helfen, Langeweile in unserem täglichen Leben zu lindern, insbesondere einige Lieder in Film- und Fernsehsendungen. Solange wir danach suchen, werden sie auftauchen und jeder kann sie hören. Wie laden wir die Songs herunter, die wir gerne lokal hören? Viele Freunde wissen es nicht, deshalb hat der Herausgeber für diejenigen, die interessiert sind, einfach eine Anleitung zum Herunterladen von Songs auf den lokalen Computer zusammengestellt Ich hoffe, dass es für alle hilfreich sein wird. Anleitung zum Herunterladen von Kugou Music auf lokal 1. Öffnen Sie zunächst Kugou Music und klicken Sie auf der Kugou Music-Seite auf die Musik, die Sie herunterladen möchten. 2. Rufen Sie dann die Seite dieser Musik auf und klicken Sie unten auf das [Drei-Punkte-Symbol]. 3. Nach dem Klicken
