码迷,mamicode.com
首页 > 其他好文 > 详细

27、周末吃什么(每周五自动爬取下厨房本周最受欢迎的菜谱)

时间:2019-05-12 01:41:43      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:list   原材料   ftime   开始   clip   sts   cep   boa   col   

在之前吴氏私厨的基础上,每周五自动爬取下厨房本周最受欢迎的菜谱
 
 1 import requests
 2 import time
 3 import schedule
 4 import smtplib
 5 from email.mime.text import MIMEText
 6 from email.header import Header
 7 from bs4 import BeautifulSoup
 8 
 9 def caipu_fun():
10     res = requests.get(http://www.xiachufang.com/explore/)
11     html = res.text
12     soup = BeautifulSoup(html,html.parser)
13     item = soup.find(div,class_=info pure-u)
14     caipu = 本周最佳菜谱: + item.find(a).text.strip() + \n  链接:  + http://www.xiachufang.com+item.find(a)[href] + \n  原材料: + item.find(p,class_=ing ellipsis).text.strip()
15     return caipu
16 
17 def mail_fun(zhuti,caipu):
18     mail_user = www1707@xxx.cn
19     mail_pwd  = yyy
20     receiver  = user01@xxx.cn
21     subject   = zhuti
22     content   = caipu
23 
24     alimail = smtplib.SMTP()
25     alimail.connect(smtp.qiye.aliyun.com,25)
26     alimail.login(mail_user,mail_pwd)
27 
28     message = MIMEText(content,plain,utf-8)
29     message[Subject] = Header(subject,utf-8)
30     message[From]    = Header(mail_user,utf-8)
31     message[To]      = Header(receiver,utf-8)
32 
33     alimail.sendmail(mail_user,receiver,message.as_string())
34     alimail.quit()
35 
36 def main_fun():
37     zhuti = time.strftime(%Y{}%W{}).format(年 第,周 最佳菜谱)
38     caipu = caipu_fun()
39     mail_fun(zhuti,caipu)
40     print(zhuti)
41 
42 schedule.every().friday.do(main_fun)
43 
44 while True:
45     schedule.run_pending()
46     time.sleep(1)

 技术图片

老师的答案
 
 1 import requests
 2 import smtplib
 3 import schedule
 4 import time
 5 from bs4 import BeautifulSoup
 6 from email.mime.text import MIMEText
 7 from email.header import Header
 8 
 9 account = input(请输入你的邮箱:)
10 password = input(请输入你的密码:)
11 receiver = input(请输入收件人的邮箱:)
12 
13 def recipe_spider():
14     res_foods = requests.get(http://www.xiachufang.com/explore/)
15     bs_foods = BeautifulSoup(res_foods.text,html.parser)
16     list_foods = bs_foods.find_all(div,class_=info pure-u)
17     list_all = ‘‘
18     num=0
19     for food in list_foods:
20         num=num+1
21         tag_a = food.find(a)
22         name = tag_a.text.strip()
23         url = http://www.xiachufang.com+tag_a[href]
24         tag_p = food.find(p,class_=ing ellipsis)
25         ingredients = tag_p.text.strip()
26         food_info = ‘‘‘
27         序号: %s
28         菜名: %s
29         链接: %s
30         原料: %s
31         ‘‘‘%(num,name,url,ingredients)
32         list_all=list_all+food_info
33     return(list_all)
34 
35 def send_email(list_all):
36     global account,password,receiver
37     mailhost=smtp.qq.com
38     qqmail = smtplib.SMTP()
39     qqmail.connect(mailhost,25)
40     qqmail.login(account,password)
41     content= 亲爱的,本周的热门菜谱如下+list_all
42     message = MIMEText(content, plain, utf-8)
43     subject = 周末吃个啥
44     message[Subject] = Header(subject, utf-8)
45     try:
46         qqmail.sendmail(account, receiver, message.as_string())
47         print (邮件发送成功)
48     except:
49         print (邮件发送失败)
50     qqmail.quit()
51 
52 def job():
53     print(开始一次任务)
54     list_all = recipe_spider()
55     send_email(list_all)
56     print(任务完成)
57 
58 schedule.every().friday.at("18:00").do(job)#部署每周三的13:15执行函数的任务
59 
60 while True:
61     schedule.run_pending()
62     time.sleep(1)

 技术图片

27、周末吃什么(每周五自动爬取下厨房本周最受欢迎的菜谱)

标签:list   原材料   ftime   开始   clip   sts   cep   boa   col   

原文地址:https://www.cnblogs.com/www1707/p/10850650.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!