Heim  >  Artikel  >  Backend-Entwicklung  >  So verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern

So verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern

little bottle
little bottlenach vorne
2019-04-29 11:18:252959Durchsuche

WeChat ist eine soziale Software, die am 21. Januar 2011 von Tencent gestartet wurde. Heute zeige ich Ihnen, wie Sie mit Python den Rückzug von WeChat verhindern können. Interessierte Freunde können mehr darüber erfahren.

1. Hintergrundeinführung

Mit der Aktualisierung und Iteration von Produkten gehen zwangsläufig Funktionen einher, die 2014 eingeführt wurden. 撤回消息, Benutzer, die diese Funktion verwenden, werden erfrischt und erfrischt, aber die Benutzer kratzen sich möglicherweise am Kopf und knirschen mit den Zähnen, um zu wissen, was Sie zurückgezogen haben. Dies ist die sogenannte Neugier, die die Katze tötet. Heute werden wir Python verwenden um das Zurückziehen von WeChat-Nachrichten zu verhindern und die Neugier aller zu befriedigen! Verwandte Tutorials: Python-Video-Tutorial

So verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern

2. Funktionales Design

Wir hoffen, dass, wenn ein Freund oder jemand in der Gruppe das zurückzieht Nachricht: Die ursprüngliche Nachricht und die Absenderinformationen können sofort an den Dateiassistenten weitergeleitet werden (natürlich können Sie die Nachricht auch an ihn zurücksenden, haha), damit wir sie bequemer anzeigen können.

Lassen Sie mich die implementierte Funktion demonstrieren.
So verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern

3. Funktionsimplementierung

1. Prinzip des WeChat-Nachrichtenentzugs

Lassen Sie uns zunächst das Prinzip des WeChat-Nachrichtenentzugs verstehen:

Tatsächlich besteht das Prinzip beim Zurückziehen einer Nachricht auf WeChat darin, dass der Client automatisch eine Systemnachricht sendet, wenn der Betreiber auf „Zurückziehen“ klickt: „xxx hat eine Nachricht zurückgezogen“ und die andere App die Nachricht dann analysiert Nachdem Sie es erhalten haben, ändern Sie einfach den Anzeigestil

Bruder Zhu zeigt Ihnen den Unterschied zwischen dem Inhalt von 正常消息 und 撤回消息:
Normale Nachricht: Content='你好骚啊', bitte achten Sie daraufMsgId='8784390488772995470'
So verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern
Nachricht zurückziehen: Inhalt ist eine Inhaltszeichenfolge im XML-Format
So verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern
Lass es uns unten formatieren und einen Blick darauf werfen

<sysmsg type="revokemsg">
  <revokemsg>
    <session>xxx</session>
    <oldmsgid>1090336364</oldmsgid>
    <msgid>8784390488772995470</msgid>
    <replacemsg><![CDATA["猪哥" 撤回了一条消息]]></replacemsg>
  </revokemsg>
</sysmsg>

Analysieren Sie die obige Auszahlung. Im Feld Content haben wir festgestellt, dass die ID von <msgid>8784390488772995470</msgid> mit der ID der zuvor gesendeten Nachricht übereinstimmt, und das Tag <replacemsg></replacemsg> hat auch meine Vermutung bestätigt, und das ist tatsächlich der Fall Ersetzen der ursprünglichen Nachricht durch eine neue Nachricht.

2. Finden Sie die zurückgezogene Nachricht

Entsprechend dem Crawling-Inhalt 正常消息 und 撤回消息 haben wir die Regel gefunden: Die Rückzugsnachricht enthält das msgid der zuvor zurückgezogenen Nachricht Dann müssen wir nur die vorherige Nachricht finden, und das wxpy-Modul speichert standardmäßig die neuesten 200 Nachrichten für uns, sodass wir nur diese historischen Nachrichten durchsuchen und msgid vergleichen müssen, um die zurückgezogene Nachricht La zu finden !
So verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern
Wenn Ihre WeChat-Nachrichten zu häufig sind und die Anzahl der Nachrichten innerhalb von 2 Minuten 200 überschreitet, können Sie max_history größer einstellen.

3. Weiterleiten der zurückgezogenen Nachricht

Nachdem ich nun das Prinzip verstanden habe und die zurückgezogene Nachricht gefunden wurde, besteht der letzte Schritt darin, die Nachricht weiterzuleiten. Sie werden es auf jeden Fall tun. Okay, nur eine Zeile Code kann die Nachricht weiterleiten: wxpy

msg.forward(bot.file_helper)

4. Nachdem das Prinzip und der Prozess erklärt wurden, wird der Code für alle veröffentlicht Siehe. Die Kommentare sind ziemlich detailliert. Wenn Sie es nicht verstehen, können Sie mich in der Lerngruppe fragen.


4. FunktionsüberprüfungSo verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern

So verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern

5. WeChat Die Anti-Entzugsfunktion für Nachrichten ist einfach zu implementieren, aber sehr praktisch. Das einzige Manko des aktuellen Projekts ist die schlechte Benutzerfreundlichkeit. Wir haben das Projekt nicht jedes Mal bereitgestellt, wenn wir es verwenden Ich überlege, das Projekt auf einem Cloud-Server bereitzustellen oder es später in eine APK zu packen, was sehr praktisch ist apk an Freunde weitergeben, damit diese diese Funktion ebenfalls erleben können!

Lernen Sie diesen Trick und Sie müssen sich nicht mehr fragen, welche Nachricht die andere Partei zurückgezogen hat. Laden Sie das Projekt herunter und probieren Sie es aus! Nachdem Sie das Projekt heruntergeladen haben, können Sie es direkt ausführen, ohne den Code zu ändern!

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Python, um das Zurückziehen von WeChat-Nachrichten zu verhindern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen