Mit dem Python-Crawler lernen Sie, Videoinhalte zu crawlen

        Das grundlegende Daten-Crawling wurde bereits früher eingeführt, und die relevanten Fälle des Bild-Crawlings wurden auch im vorherigen Artikel behandelt. In Bezug auf das Problem, dass die Website in einigen Fällen nicht angemeldet werden kann, können Sie einige andere Websites finden, da dies jetzt der Grund ist Tatsächlich ist jede Website gleich, sie verfügt über einen Anti-Kletter-Mechanismus, daher gibt es natürlich eine Möglichkeit, damit umzugehen. Im folgenden Fall werde ich Ihnen auch eine Fall-Website als Referenz zum Lernen geben. Folgen Sie mir für kontinuierliche Updates!

1. Fall-Website

Website-Link: selbst gemeldete
Seitenreferenz:
Fügen Sie hier eine Bildbeschreibung ein

2. Gedankenanalyse

1. Holen Sie sich die m3u8-Datei

Die m3u8- Datei zerlegt das Video in Fragmente. Die Dauer ist variabel und im Allgemeinen kurz. Sie können den entsprechenden Link zur TS- Datei erhalten, indem Sie die m3u8-Datei abrufen und dann das fragmentierte Video herunterladen. Sie müssen jedoch ein Tool eines Drittanbieters verwenden um das Video später einzubinden. Videoclips werden im gesamten Video wiederhergestellt.

2. Laden Sie das TS-Video herunter

Das erhaltene m3u8 wird über die Python-Funktion verarbeitet, um eine Zeichenfolgenverarbeitung durchzuführen und Videoclips einzeln herunterzuladen. Das Video wird im Binärformat gespeichert, daher sollte beim Herunterladen die .content-Methode zum Herunterladen verwendet werden, schließlich ist das MP4-Format Wird zur dauerhaften Speicherung verwendet.

3. Schrittanalyse und Ergebnisanzeige

        Hier erkläre ich Ihnen meine eigene Methode. Sie können zunächst das Paketerfassungstool verwenden, um Videoelemente abzurufen, und Sie können feststellen, dass sich die meisten davon im Video-Tag befinden. Zu diesem Zeitpunkt können Sie überprüfen, ob ein Video-Tag vorhanden ist Der Quellcode der Webseite. Im Allgemeinen wird dies nicht der Fall sein. Sie können es ausprobieren, damit Sie es besser verstehen können.
        Daher wird das Video über Ajax geladen, sodass Sie im Tag „<script.>“ nach dem Video suchen können und zu diesem Zeitpunkt möglicherweise etwas erhalten. Darüber hinaus können Sie das Paketerfassungstool durchsuchen. In diesem Fall Die zweite Methode wird übernommen, da
dieser Fall 1 nicht funktioniert

Allgemeines Format der m3u8-Datei (Folgeartikel zum verschlüsselten Format erklärt die Entschlüsselung)

Fügen Sie hier eine Bildbeschreibung ein
Fügen Sie hier eine Bildbeschreibung ein
Es kann festgestellt werden, dass der Link der TS-Datei nicht vollständig ist, aber analysiert werden kann:
Die Analyse wurde im Bild dargestellt:
Fügen Sie hier eine Bildbeschreibung ein

Ergebnisanzeige:

PyCharm Open ist verstümmelt
Fügen Sie hier eine Bildbeschreibung ein

Suchen Sie den Root-Pfad zum Öffnen von
Fügen Sie hier eine Bildbeschreibung ein
1.ts
Fügen Sie hier eine Bildbeschreibung ein

Sie können versuchen, die erhaltenen Videoclips selbst zu synthetisieren. Der Code ist unten angegeben

4. Vollständige Codeanzeige (bewegen Sie Ihre kleinen Hände dreimal, das Codewort ist bitte nicht einfach!)

import requests

url="https://v8.dious.cc/20221223/2jfDSrly/1500kb/hls/index.m3u8"

headers={
    
    
    "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.52"
}
n=1
response=requests.get(url=url,headers=headers)
with open("侍酒令第一集.txt","wb") as fp:
    fp.write(response.content)

with open("侍酒令第一集.txt",mode="r",encoding="utf-8") as fp:
    for line in fp:
        line=line.strip()
        if line.startswith("#"):
            continue
        last_tspath="https://v8.dious.cc"+line
        resp3=requests.get(last_tspath)
        f=open(f"{
      
      n}.ts",mode="wb")
        f.write(resp3.content)
        n+=1

Guess you like

Origin blog.csdn.net/qqshenbaobao/article/details/128762025