Merhaba Arkadaşlar Bilişim Devleri Olarak Bügün Sizlere Python İle Gmail Den veri Alma Kodu Ve Örneğin Size Gösterceğiz
Python kullanarak Gmail'den veri almak için Google tarafından sağlanan Gmail API'sini kullanabilirsiniz Size Örnek Göstercem Şimdi Geçelim Şimdi Kodlarımız Ve Adımlarımıza
1:Google Cloud Console'da bir Proje oluşturun Ve Bu Adımları İzleyin:
Google Bulut Konsoluna Adresinden ( https://console.cloud.google.com ) gidin ve yeni bir proje oluşturun.
Projeniz için Gmail API'yi etkinleştirin.Bir OAuth istemci kimliği oluşturarak projeniz için kimlik bilgileri oluşturun. Kimlik bilgilerini içeren JSON dosyasını indirin. ve Aşağıdaki Gibi komut İle İşlemlere Devam Edin
2:Gerekli kitaplıkları kurun:
Terminalinizi veya komut isteminizi açın.
Google İstemci Kitaplığını yüklemek için aşağıdaki komutu çalıştırın:
CSS Kodları
pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib
Python kodunu yazın:
Yeni bir Python dosyası Gmail Aktarılacak Şekilkde Aktarın (örn., gmail_api.py) oluşturun ve gerekli kitaplıkları içe aktarın:
import os import base64 import email import re from googleapiclient.discovery import build from google.oauth2.credentials import Credentials
Python Gmail ile kimlik doğrulaması yapmak için bir işlev tanımlayın:
def authenticate():
creds = None
if os.path.exists('token.json'):
creds = Credentials.from_authorized_user_file('token.json')
if not creds or not creds.valid:
if creds and creds.expired and creds.refresh_token:
creds.refresh(Request())
else:
flow = InstalledAppFlow.from_client_secrets_file(
'credentials.json', ['https://www.googleapis.com/auth/gmail.readonly'])
creds = flow.run_local_server(port=0)
with open('token.json', 'w') as token:
token.write(creds.to_json())
return build('gmail', 'v1', credentials=creds)
ls
E-posta mesajlarını almak için bir işlev tanımlayın:
def get_email_messages():
service = authenticate()
results = service.users().messages().list(userId='me', labelIds=['INBOX']).execute()
messages = results.get('messages', [])
if not messages:
print('No messages found.')
else:
for message in messages:
msg = service.users().messages().get(userId='me', id=message['id']).execute()
payload = msg['payload']
headers = payload['headers']
for header in headers:
name = header['name']
if name.lower() == 'from':
sender = header['value']
if name.lower() == 'subject':
subject = header['value']
print('Sender:', sender)
print('Subject:', subject)
print('Snippet:', msg['snippet'])
print('---')
get_email_messages()E-posta mesajlarını almak için işlevi çağırın :
get_email_messages()
Python betiğini çalıştırın:
credentials.jsonve token.json dosyalarının (1. adımdan elde edilen) Python betiğinizle aynı dizinde olduğundan emin olun . Python betiğini çalıştırın:
python gmail_api.py
Bu kod, Gmail gelen kutunuzdan e-posta mesajlarının listesini alacak ve her mesajın gönderenini, konusunu ve snippet'ini yazdıracaktır. Özel gereksinimlerinize uyacak şekilde değiştirebilir ve e-postanın diğer bölümlerine gerektiği gibi erişebilirsiniz ve python şle gmail daha falza mesaj ve mail almak içinde bu kod kulanıla bilir.
Kafanıza takılan yerler için yorumlar kısmından bana ulaşabilir ve sorularınızı sorabilirsiniz ve iletişim için burdan iletişim sayfasından iletişime geçebilirsiniz.
