zoukankan      html  css  js  c++  java
  • 标题党之---每日情话团

    利用python获得每日情话,邮件发送

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

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

    分析情话网站dom结构

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

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

    image-20200513224034787
    # 返回多条语录
    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)
    

    效果图如下

    image-20200513225516489

    具体的代码在github连接里面

  • 相关阅读:
    探索Java8:(二)Function接口的使用
    Vue 动态图片加载路径问题和解决方法
    小工具:使用Python自动生成MD风格链接
    解决Navicat Premium 12 连接oracle数据库出现ORA-28547的问题
    Beetl模板引擎入门教程
    JSON.stringify()的深度使用
    nvm 查看node版本
    去掉点击a标签时产生的虚线框
    html 设置input框的记忆功能(联想内容)
    php post和get请求
  • 原文地址:https://www.cnblogs.com/fangyuandoit/p/13713778.html
Copyright © 2011-2022 走看看