tempmail python
2.3.3 - Python 3.7+ support
tempmail-python — это библиотека Python для создания и управления временными адресами электронной почты с помощью службы 1secmail. Он предоставляет функции для создания адресов электронной почты, проверки новых сообщений и получения содержимого сообщений.
Вы можете установить tempmail-python с помощью pip:
pip install tempmail-python
Или вы можете установить его из исходного кода:
pip install git+https://github.com/cubicbyte/tempmail-python.git
Получить сообщение (например, код активации)
from tempmail import EMail
email = EMail ()
print ( email . address ) # [email protected]
# ... request some email ...
msg = email . wait_for_message ()
print ( msg . body ) # Hello World!n
Получить все сообщения в папке «Входящие»
from tempmail import EMail
email = EMail ( '[email protected]' )
inbox = email . get_inbox ()
for msg_info in inbox :
print ( msg_info . subject , msg_info . message . body )
Скачать вложение
from tempmail import EMail
email = EMail ( username = 'example' , domain = '1secmail.com' )
msg = email . wait_for_message ()
if msg . attachments :
attachment = msg . attachments [ 0 ]
data = attachment . download ()
# Print
print ( data ) # b'Hello World!n'
print ( data . decode ( 'utf-8' )) # Hello World!n
# Save to file
with open ( attachment . filename , 'wb' ) as f :
f . write ( data )
Получить код активации Reddit
from tempmail import EMail
def reddit_filter ( msg ):
return ( msg . from_addr == '[email protected]' and
msg . subject == 'Verify your Reddit email address' )
email = EMail ( address = '[email protected]' )
msg = email . wait_for_message ( filter = reddit_filter )
# get_activation_code(html=msg.html_body)
Некоторые другие особенности:
from tempmail . providers import OneSecMail
email = OneSecMail ()
# request_email(email=email.address)
# Speed up inbox refresh rate
OneSecMail . inbox_update_interval = 0.1 # every 100ms
# Accept only emails with a specific subject, raise error after 60 seconds
msg = email . wait_for_message ( timeout = 60 , filter = lambda m : m . subject == 'Hello World!' )
print ( msg . body )
tempmail-python распространяется по лицензии MIT. Дополнительную информацию смотрите в файле LICENSE.