Ja, wir gehen von einer Umgebung aus, in der Sie nicht auf Twitter zugreifen können, selbst wenn Sie während der Arbeit E-Mails nach außen oder an ein anderes Ziel senden, obwohl es sich um Sef Sef handelt. Die Mail wird nach dem Tweeten automatisch gelöscht. Der Zweck besteht darin, eine doppelte Veröffentlichung mit vernetzter Beweisvernichtung zu verhindern. Ja, Sie müssen es irgendwo zu Hause installieren oder mieten und regelmäßig betreiben. http://symfoware.blog68.fc2.com/blog-entry-891.html Wir danken Ihnen, dass Sie das Thema Google Mail erhalten haben. Oder besser gesagt, es ist eine Kopie. Ich habe nur die anderen Elemente als die Betreff-Erfassung so weit wie möglich entfernt und eine Buchungsfunktion hinzugefügt, um die E-Mail zu löschen. Danke für Ihre Unterstützung.
gmail_twitter.py
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import imaplib, email, email.Header
import sys
from urllib import urlencode
#Ich habe mein eigenes Token für die Oauth-Authentifizierung.
#Wenn Sie es nicht beiseite legen, haben Sie Angst vor einer Offenlegung aufgrund eines Unfalls.
import oat
"""
Informationen zur Google Mail-Erfassung
http://symfoware.blog68.fc2.com/blog-entry-891.html
Wir haben mehr erhalten.
"""
class imap4mail(object):
def __init__(self, data):
"""
Führt eine Analyse der im Konstruktor angegebenen Mail-Daten durch
"""
self.files = {}
#Nachricht analysieren
msg = email.message_from_string(data)
#Titelerwerb
self.title = self.decode(msg.get('Subject'))
def decode(self, dec_target):
"""
E-Mail-Titel, Absenderdecodierung
"""
decodefrag = email.Header.decode_header(dec_target)
title = ''
for frag, enc in decodefrag:
if enc:
title += unicode(frag, enc)
else:
title += unicode(frag)
return title
def analize_mail(mail):
#Veröffentlichen Sie den Betreff der abgerufenen E-Mail
oat.client.request('https://api.twitter.com/1.1/statuses/update.json', 'POST', urlencode({'status': mail.title.encode('utf-8')}))
if __name__ == "__main__":
host = 'imap.gmail.com'
user = '[email protected]'
password = 'password'
mailbox = 'INBOX'
#Mail-Server-Spezifikation
M = imaplib.IMAP4_SSL(host=host)
#Einloggen
M.login(user, password)
#Mailboxauswahl
M.select(mailbox)
typ, data = M.search(None, 'ALL')
for num in data[0].split():
typ, data = M.fetch(num, '(RFC822)')
mail = imap4mail(data[0][1])
#Auf Twitter posten
analize_mail(mail)
#E-Mail nach dem Posten löschen
M.store(num, '+FLAGS', '\\Deleted')
M.expunge()
M.close()
M.logout()
Ja, Kommentare usw. sind fast so wie sie sind. Wenn ich den Kommentar ändere, ist es das.
Recommended Posts