Heim Backend-Entwicklung Python-Tutorial Praktischer Crawler-Kampf in Python: WeChat-Crawler für öffentliche Konten

Praktischer Crawler-Kampf in Python: WeChat-Crawler für öffentliche Konten

Jun 10, 2023 am 09:01 AM
python WeChat Official Account Reptil

Python ist eine elegante Programmiersprache mit leistungsstarken Datenverarbeitungs- und Web-Crawling-Funktionen. In diesem digitalen Zeitalter ist das Internet mit großen Datenmengen gefüllt, und Crawler sind zu einem wichtigen Mittel zur Datenbeschaffung geworden. Daher werden Python-Crawler häufig in der Datenanalyse und beim Mining eingesetzt.

In diesem Artikel stellen wir vor, wie Sie den Python-Crawler verwenden, um Artikelinformationen zu öffentlichen WeChat-Konten zu erhalten. Der offizielle WeChat-Account ist eine beliebte Social-Media-Plattform für die Online-Veröffentlichung von Artikeln und ein wichtiges Instrument für die Werbung und das Marketing vieler Unternehmen und Self-Media.

Hier sind die Schritte:

  1. Python-Crawler-Bibliothek installieren

Python bietet viele Crawler-Bibliotheken zur Auswahl. In diesem Beispiel verwenden wir die Python-Crawler-Bibliothek beautifulsoup4, um Artikelinformationen zu öffentlichen WeChat-Konten zu extrahieren. Verwenden Sie pip, um diese Bibliothek zu installieren:

pip install beautifulsoup4
  1. Holen Sie sich den Link zu historischen Artikeln des öffentlichen WeChat-Kontos

Es ist sehr einfach, die historischen Artikel eines öffentlichen Kontos abzurufen. Zuerst müssen wir den Namen oder die ID des öffentlichen Kontos finden. Beispiel: Die ID des öffentlichen Kontos „Zen of Python“ lautet „Zen-of-Python“.

Es ist schwierig, Daten direkt aus der WeChat-Webversion zu erfassen, daher benötigen wir Tools, um die Artikellistenseite einfach abzurufen. In diesem Beispiel verwende ich den von Sogou WeChat Search bereitgestellten Dienst, mit dem die Artikellistenseite jedes öffentlichen Kontos auf WeChat problemlos abgerufen werden kann.

Wir müssen das Robot-Framework und die Selenium-Bibliothek installieren, um Browservorgänge zu simulieren und die Artikellistenseite über die Suchmaschine abzurufen.

pip install robotframework
pip install robotframework-seleniumlibrary
pip install selenium
  1. Zusätzliche Artikelinformationen erhalten

Für jeden Artikellink benötigen wir auch einige zusätzliche Artikelinformationen, wie z. B. Artikeltitel, Veröffentlichungszeit, Autor usw. Auch hier werden wir die Bibliothek beautifulsoup4 verwenden, um diese Informationen zu extrahieren.

Das Folgende ist ein Codeausschnitt, mit dem Artikellinks zu öffentlichen Konten sowie der Titel, die Veröffentlichungszeit, das Lesevolumen und die Anzahl der Likes jedes Artikels gecrawlt werden können:

import requests
from bs4 import BeautifulSoup
import time

url = "http://weixin.sogou.com/weixin?type=1&query={}".format("Python之禅")

# 使用Selenium工具来模拟浏览器操作
from selenium import webdriver

driver = webdriver.Chrome()
driver.get(url)

# 执行搜索动作
search_box = driver.find_element_by_xpath('//*[@id="query"]')
search_box.send_keys(u"Python之禅")
search_box.submit()

# 点击搜索结果中的公众号
element = driver.find_element_by_xpath('//div[@class="news-box"]/ul/li[2]/div[2]/h3/a')
element.click()

# 等待页面加载
time.sleep(3)

# 点击“历史消息”链接
element = driver.find_element_by_xpath('//a[@title="历史消息"]')
element.click()

# 等待页面加载
time.sleep(3)

# 获取文章链接
soup = BeautifulSoup(driver.page_source, 'html.parser')
urls = []
for tag in soup.find_all("a", href=True):
    url = tag["href"]
    if "mp.weixin.qq.com" in url:
        urls.append(url)

# 获取每篇文章的标题、发布时间、阅读量和点赞数
for url in urls:
    response = requests.get(url)
    response.encoding = 'utf-8'
    soup = BeautifulSoup(response.text, 'html.parser')

    title = soup.find('h2', {'class': 'rich_media_title'}).text.strip()
    date = soup.find('em', {'id': 'post-date'}).text.strip()
    readnum = soup.find('span', {'class': 'read_num'}).text.strip()
    likenum = soup.find('span', {'class': 'like_num'}).text.strip()
    print(title, date, readnum, likenum)

Das Obige ist der gesamte Inhalt der Python-Übung dieses Artikels : Crawler für öffentliche WeChat-Konten. Dieser Crawler kann relevante Informationen aus historischen Artikeln öffentlicher WeChat-Konten abrufen und über die beautifulsoup4-Bibliothek und Selenium-Tools eine spezifischere Extraktionsverarbeitung durchführen. Wenn Sie daran interessiert sind, mithilfe von Python-Crawlern wertvollere Informationen aufzudecken, ist dieses Beispiel ein guter Ausgangspunkt.

Das obige ist der detaillierte Inhalt vonPraktischer Crawler-Kampf in Python: WeChat-Crawler für öffentliche Konten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

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

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

PHP-Tutorial
1596
276
Wie fahre ich Python -Code in Sublime Text aus? Wie fahre ich Python -Code in Sublime Text aus? Aug 16, 2025 am 04:58 AM

Stellen Sie sicher, dass Python installiert und dem Systempfad hinzugefügt wird. Führen Sie Python-Version oder Python3-Versionsprüfung durch das Terminal aus; 2. Speichern Sie die Python -Datei als .Py -Erweiterung wie Hello.py; 3.. Erstellen Sie ein benutzerdefiniertes Build-System in Sublimetext, Windows-Benutzer verwenden {"CMD": ["Python", "-u", "$ file"]}, MacOS/Linux-Benutzer verwenden {"CMD": ["Python3

So debuggen Sie ein Python -Skript in VSCODE So debuggen Sie ein Python -Skript in VSCODE Aug 16, 2025 am 02:53 AM

Um Python -Skripte zu debuggen, müssen Sie zuerst die Python -Erweiterung installieren und den Interpreter konfigurieren. Erstellen Sie dann eine LOWN.JSON -Datei, um die Debugging -Konfiguration festzulegen. Setzen Sie dann einen Haltepunkt in den Code und drücken Sie F5, um das Debugging zu starten. Das Skript wird am Haltepunkt unterbrochen, sodass die Überprüfung von Variablen und die Schritt-für-Schritt-Ausführung überprüft werden kann. Durch die Überprüfung des Problems durch Anzeigen der Konsolenausgabe, Hinzufügen von Protokollen oder Anpassungsparametern usw., um sicherzustellen, dass der Debugging -Prozess nach korrekter Umgebung einfach und effizient ist.

Was sind Klassenmethoden in Python Was sind Klassenmethoden in Python Aug 21, 2025 am 04:12 AM

ClassMethodsinpythonarboundtotheClassandNottoinstances, die THEMTOBECALLED WITHOUT CREATEANOBJECT.1.Theyaredefinedused the@classMethoddecoratorandtakeClsastheFirstparameter, überlegt

Python Asyncio Queue Beispiel Python Asyncio Queue Beispiel Aug 21, 2025 am 02:13 AM

asyncio.queue ist ein Warteschlangenwerkzeug für eine sichere Kommunikation zwischen asynchronen Aufgaben. 1. Der Produzent fügt Daten über AwaitQueue.put (Element) hinzu, und der Verbraucher verwendet AwaitQueue.get (), um Daten zu erhalten. 2. Für jeden Artikel, den Sie verarbeiten, müssen Sie Queue.task_done () anrufen, um auf Queue.join () zu warten, um alle Aufgaben zu erledigen. 3. Verwenden Sie keine als Endsignal, um den Verbraucher zu benachrichtigen, um zu stoppen. 4. Wenn mehrere Verbraucher mehrere Endsignale gesendet werden müssen oder alle Aufgaben bearbeitet wurden, bevor die Aufgabe abgesagt wird. 5. Die Warteschlange unterstützt die Einstellung der Maxsize -Grenzkapazität, die Einstellung und Erhalten von Vorgängen automatisch und blockiert die Ereignisschleife nicht, und das Programm übergeht schließlich CORD

Wie funktioniert das Keyword der Rendite in Python? Wie funktioniert das Keyword der Rendite in Python? Aug 15, 2025 am 08:23 AM

Mit dem Keyword für die Ausbeute wird eine Generatorfunktion definiert, damit die Ausführung pausieren und die Werte nacheinander zurückgeben und dann die Pause wiederherstellen können. Die Generatorfunktion gibt ein Generatorobjekt zurück, hat faule Bewertungseigenschaften und kann Speicher speichern. Es eignet sich zum Umgang mit Szenarien wie großen Dateien, Streaming -Daten und unendlichen Sequenzen. Der Generator ist ein Iterator, der als nächstes () und für Schleifen unterstützt, aber nicht zurückspulen kann und muss wieder nachgebaut werden, um wieder iteriert zu werden.

Wie erstelle ich ein Python -Projekt in Sublime Text? Wie erstelle ich ein Python -Projekt in Sublime Text? Aug 16, 2025 am 08:53 AM

InstallSublimetextandpython, thenconfigureabuildSystemByCreatrectython3.Sublime-buildFileWitHtheAppropriatecmdandSelectingstoenablerunningPythoncriptsviactrl.2organize-ProjectbyThonScriptsScriptsviAcThonfilesandSupporing-CreatedaDedPythonwithitherWithPyThonfilesandsupporationSandsupporationSandsupporationSandsupporation,

Wie führe ich ein Python -Skript aus und sehe die Ausgabe in einem separaten Bereich in Sublime Text? Wie führe ich ein Python -Skript aus und sehe die Ausgabe in einem separaten Bereich in Sublime Text? Aug 17, 2025 am 06:06 AM

Toseepythonoutputinaseparatepanelinublimetext, useetebuilt-InbuildsystembySavingYourFilewitha.PyextensionandpressingCtrl B (orcmd b) .2.

Wie kann man vermeiden, während des Webkratzens mit Python blockiert zu werden? Wie kann man vermeiden, während des Webkratzens mit Python blockiert zu werden? Aug 16, 2025 am 09:54 AM

ToavoidGetingBlocked whileWebscrapingwithpython, userealisticrequestheaders, addrandomisierte Delays, RotateIpadresseswithProxies, Wartungen, Respactrobots.txt und UseheadlessBrowsersWon -Gentrey, sichergestellt, die Methode, die die Methode standhalte, und die Methode, die und die Stufe, die standhalte, und die Stufe von Stern und Wesen und Verbrauchs und verwendeten und verwendeten und sich und assethicalSpendehaviortomimimimimimimimimimimimimimimicrealusers und sich versichern

See all articles