Python定时推送书籍到kindle 2022-03-07

为了彻底告别选择焦虑症,我一直希望能实现一种方法,就是每天定时向kindle随机推送一本书,最近终于通过python实现了(我几乎不懂Python,代码都是网上找的,然后修改修改,所以不难)。

方法如下:

1、下载大量mobi书籍;

2、重命名所有mobi书籍,名称为1.mobi、2.mobi、......4999.mobi;

3、建立Python程序发送书籍,每次文件名采用随机数确定,这样就实现了随机推送一本书;

4、建立bat脚本程序;

5、通过window任务定时执行脚本程序。

如需与我沟通,请联系[email protected]

Python程序如下:

import smtplib

import random

from email.mime.text import MIMEText

from email.mime.image import MIMEImage

from email.mime.multipart import MIMEMultipart

from email.mime.application import MIMEApplication

if __name__ == '__main__':

        fromaddr = '[email protected]'#发件箱,需在账号里设置为白名单        

       password = 'XXXXXXXX'#邮箱密码或授权码

        toaddrs = ['[email protected]']#kindle邮箱

        content = 'python自动推送书籍'

        textApart = MIMEText(content)

        bookname=random.randint(1,2495)

        mobiFile = str(bookname)+".mobi"#获取电子书的名称

        mobiApart = MIMEApplication(open(mobiFile, 'rb').read())

        mobiApart.add_header('Content-Disposition', 'attachment', filename=mobiFile)

        m = MIMEMultipart()#构建邮件

        m.attach(textApart)

        m.attach(mobiApart)

        m['Subject'] = '电子书-'+str(bookname)+"mobi"

        try:

            server = smtplib.SMTP('smtp.163.com')

            server.login(fromaddr,password)

            server.sendmail(fromaddr, toaddrs, m.as_string())

            print('success')

            server.quit()

        except smtplib.SMTPException as e:

            print('error:',e) #打印错误

BAT脚本如下:

@echo off

start cmd /k "cd/d e:\book&& python mail.py&&exit"

你可能感兴趣的:(Python定时推送书籍到kindle 2022-03-07)