1 import smtplib , requests , schedule , time
2 from email.mime.text import MIMEText
3 from email.header import Header
4 from bs4 import BeautifulSoup
5
6 def course_spider():
7 list_course = []
8 url = 'http://www.xiachufang.com/explore/?page='
9 headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'}
10 for i in range(1,4):
11 res_recipe = requests.get(url+str(i) , headers=headers)
12 res_recipe.encoding = 'utf-8'
13 bs_recipe = BeautifulSoup(res_recipe.text , 'html.parser')
14 list_recipe = bs_recipe.find(class_='normal-recipe-list').find_all('li')
15 for a_recipe in list_recipe:
16 course = a_recipe.find(class_='name')
17 ingredient = a_recipe.find(class_='ing ellipsis')
18 list_course.append('菜名:{}\n原料:{}\n..........\n'.format(course.text.strip() , ingredient.text.strip()))
19 course_content = ' '.join(list_course)
20 return course_content
21
22
23 def send_mail():
24 qqmail = smtplib.SMTP()
25 qqmail.connect('smtp.qq.com' , 25)
26 qqmail.login('2191313025@qq.com' , 'atdkphuzskgwwebed')
27 content = course_spider()
28 message = MIMEText(content , 'plain' , 'utf-8')
29 message['Subject'] = Header('Happy new year' , 'utf-8')
30
31 qqmail.sendmail('2191313025@qq.com' , '2191313025@qq.com' , message.as_string())
32 qqmail.quit()
33
34 def job():
35 send_mail()
36
37 schedule.every(20).seconds.do(job)
38 while True:
39 schedule.run_pending()
40 time.sleep(2)
1 import smtplib , requests , time , schedule ,random
2 from bs4 import BeautifulSoup
3 from email.mime.text import MIMEText
4 from email.header import Header
5
6 def choose_movie():
7 movie_250 = []
8 movie_3 = []
9 headers = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'}
10 for i in range(3,10):
11 url = 'https://movie.douban.com/top250?start={}&filter='.format(i*25)
12 res_movie = requests.get(url , headers=headers)
13 bs_movie = BeautifulSoup(res_movie.text , 'html.parser')
14 list_movie = bs_movie.find('ol', class_="grid_view").find_all('li')
15 for movie in list_movie:
16 link = movie.find('a')
17 comment = movie.find(class_='inq')
18 name = movie.find(class_='title')
19 mark = movie.find(class_='rating_num')
20
21 try:
22 content = ('电影名:{}\n链接:{}\n推荐语:{}\n评分:{}\n.......\n'.format(name.text, link['href'], comment.text, mark.text))
23 except:
24 content = ('电影名:{}\n链接:{}\n推荐语:{}\n评分:{}\n.......\n'.format(name.text, link['href'], '无', mark.text))
25 movie_250.append(content)
26
27 movie_3 = random.sample(movie_250 , 6)
28 return movie_3
29
30
31 def sendmail():
32 qqmail = smtplib.SMTP()
33 qqmail.connect('smtp.qq.com' , 25)
34 qqmail.login('2191313025@qq.com' , 'atdkphuzskgwwebed')
35 content = ''
36 ii = choose_movie()
37 for i in ii:
38 content += i
39 # content = choose_movie()
40 message_ = MIMEText(content , 'plain' , 'utf-8')
41 message_['Subject'] = Header('go to movie' , 'utf-8')
42 qqmail.sendmail('2191313025@qq.com' , '2191313025@qq.com' , message_.as_string())
43 qqmail.quit()
44
45 sendmail()
46