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)

目录
相关文章
|
2月前
|
数据采集 Python
爬虫实战-Python爬取百度当天热搜内容
爬虫实战-Python爬取百度当天热搜内容
118 0
|
2月前
|
数据采集 JSON 数据格式
python爬虫之app爬取-charles的使用
charles 基本原理,charles抓包,分析,重发。
127 0
|
15天前
|
Web App开发 Python Windows
经验大分享:PYTHON爬取66影视的电影下载链接,有搜索功能
经验大分享:PYTHON爬取66影视的电影下载链接,有搜索功能
16 2
|
18天前
|
Python
python发送邮件
python发送邮件
11 1
|
2月前
|
数据采集 测试技术 API
python爬虫之app爬取-微信朋友圈
搭建appium环境,appium基本使用,API操作等等
163 0
|
27天前
|
数据安全/隐私保护 Python
如何使用 Python 发送邮件
如何使用 Python 发送邮件
|
1月前
|
网络安全 数据安全/隐私保护 Python
Python SMTP发送邮件
Python SMTP发送邮件
|
1月前
|
存储 XML 数据处理
Python网络实践:去哪儿旅游数据爬取指南
Python网络实践:去哪儿旅游数据爬取指南
|
1月前
|
数据采集 JSON 算法
使用Python爬取华为市场APP应用进行分析
这个网站也是作者最近接触到的一个APP应用市场类网站。讲实话,还是蛮适合新手朋友去动手学习的。毕竟爬虫领域要想进步,还是需要多实战、多分析!该网站中的一些小细节也是能够锻炼分析能力的,也有反爬虫处理。甚至是下载APP的话在Web端是无法拿到APK下载的直链,需要去APP端接口数据获取
|
1月前
|
Python 数据采集 安全
淘宝商品评论数据爬取:Python实战指南
淘宝商品评论数据的自动爬取可以为市场分析和用户行为研究提供宝贵的信息资源。然而,这一过程需要严格遵守法律法规,尊重数据的版权和隐私。通过合理利用Python的网络爬虫技术,可以在遵循道德规范的前提下,高效地完成数据采集任务。 通过本文的指南,希望你能对淘宝商品评论数据的爬取有一个清晰的认识,并能够安全、合法地进行数据采集。