标题党之---每日情话团 利用python获得每日情话,邮件发送

人生难啊,总是有人嫌弃我不会说话。每每遇到这样的情况总是去网上复制粘贴好听的情话发过去。这可太难了。为何不作一个类是自动发送的脚本呢?

有想法是好的,就差开始行动了!!

分析情话网站dom结构

分析此网站http://www.1juzi.com/new/150542.html

关键信息都在class为 content 的p标签里面,通过python的request拿到html源代码。beautifulSoup解析dom结构

标题党之---每日情话团
利用python获得每日情话,邮件发送
# 返回多条语录
def findLoveWord():
    url ="http://www.1juzi.com/new/150542.html"
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36 QIHU 360SE",
    }

    content = requests.get(url, headers=headers, verify=False).content.decode("gb2312",errors="ignore")
    soup = BeautifulSoup(content, 'html.parser')
    contentDocument = soup.find(class_="content").find_all("p")[:50]
    loveList=[];
    for dom in contentDocument:
        domString = dom.string
        domString =  domString[domString.index("、")+1:]
        loveList.append(domString)

    return loveList

通过第三方邮件如qq平台发送邮件

# 第三方 SMTP 服务
mail_host = "smtp.qq.com"  # 设置服务器
mail_user = "xxx@qq.com"  # 用户名
mail_pass = "xxxxx"  # 口令

def sendMessage(msg):
    sender = 'xxx@qq.com'
    receivers = ['xxx@qq.com']  # 接收邮件,可设置为你的QQ邮箱或者其他邮箱

    message = MIMEText('Python 邮件发送测试...', 'plain', 'utf-8')
    message['From'] = Header("情话", 'utf-8')
    message['To'] = Header("接收人", 'utf-8')

    message['Subject'] = Header(msg, 'utf-8')

    try:
        smtpObj = smtplib.SMTP()
        smtpObj.connect(mail_host, 25)  # 25 为 SMTP 端口号
        smtpObj.login(mail_user, mail_pass)
        smtpObj.sendmail(sender, receivers, message.as_string())
        print("邮件发送成功")
    except smtplib.SMTPException as e:

        print("Error: 无法发送邮件" + e)

效果图如下

标题党之---每日情话团
利用python获得每日情话,邮件发送

具体的代码在github连接里面