Python 爬取后发送邮件

简介: 邮件

import requests

import smtplib

import schedule

import time

from bs4 import BeautifulSoup

from email.mime.text import MIMEText

from email.header import Header

account =  input('请输入你的邮箱:')

password = input('请输入你的密码:')

receiver = input('请输入收件人的邮箱:')

index = 0

# index的目的是让程序只运行两次就结束

def movie_spider():

   res_movies = requests.get('https://movie.douban.com/chart')

   bs_movies = BeautifulSoup(res_movies.text, 'html.parser')

   list_movies = bs_movies.find_all('div', class_='pl2')

   list_all = []

   for movie in list_movies:

       tag_a = movie.find('a')

       name = tag_a.text.replace(' ', '').replace('\n', '')

       # 电影名,使用replace方法去掉多余的空格及换行符

       url = tag_a['href']

       # 电影详情页的链接

       tag_p = movie.find('p', class_='pl')

       # 提取父级标签中的<p>标签

       information = tag_p.text.replace(' ', '').replace('\n', '')

       # 电影基本信息,使用replace方法去掉多余的空格及换行符

       tag_div = movie.find('div', class_='star clearfix')

       # 提取父级标签中的<div>标签

       rating = tag_div.text.replace(' ', '').replace('\n', '')

       # 电影评分信息,使用replace方法去掉多余的空格及换行符

       list_all.append(name+url+information+rating)

       # 将电影名、URL、电影基本信息和电影评分信息,封装为列表,用append方法添加进list_all

   return list_all

def send_email(movie_list):

   global account, password, receiver

   mailhost = 'smtp.qq.com'

   qqmail = smtplib.SMTP_SSL()

   qqmail.connect(mailhost, 465)

   qqmail.login(account, password)

   content = '\n'.join(movie_list)

   print(content)

   message = MIMEText(content, 'plain', 'utf-8')

   subject = '本周豆瓣新片榜'

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

   try:

       qqmail.sendmail(account, receiver, message.as_string())

       print('邮件发送成功')

   except:

       print('邮件发送失败')

   qqmail.quit()

def job():

   global index

   print('开始任务')

   movie_list = movie_spider()

   send_email(movie_list)

   print(movie_list)

   print('任务完成')

   index += 1

schedule.every().second.do(job)

while index != 2:

   #这里会当index == 2的时候程序结束

   schedule.run_pending()

   time.sleep(1)

目录
相关文章
|
7月前
|
数据采集 Python
爬虫实战-Python爬取百度当天热搜内容
爬虫实战-Python爬取百度当天热搜内容
216 0
|
2月前
|
Python
python使用smtp发送邮件
python使用smtp发送邮件
37 0
|
4月前
|
数据安全/隐私保护 Python
如何使用Python自动发送邮件?
如何使用Python自动发送邮件?
139 1
|
5月前
|
数据采集 Web App开发 存储
Python-数据爬取(爬虫)
【7月更文挑战第24天】
88 7
|
5月前
|
数据采集 机器学习/深度学习 算法
Python-数据爬取(爬虫)
【7月更文挑战第23天】
73 5
|
5月前
|
数据采集 存储 Web App开发
Python-数据爬取(爬虫)
【7月更文挑战第15天】
250 3
|
6月前
|
Web App开发 Python Windows
经验大分享:PYTHON爬取66影视的电影下载链接,有搜索功能
经验大分享:PYTHON爬取66影视的电影下载链接,有搜索功能
149 2
|
6月前
|
Python
python发送邮件
python发送邮件
51 1
|
6月前
|
数据安全/隐私保护 Python
如何使用 Python 发送邮件
如何使用 Python 发送邮件
|
6月前
|
网络安全 数据安全/隐私保护 Python
Python SMTP发送邮件
Python SMTP发送邮件