首页 > 社交 > 科普中国

Python项目实战:定时抓iNFR行情,超过价值提醒(爬虫+提醒)

常驻编辑 科普中国 2022-05-17 价值   爬虫   货币   实战   邮箱   名字   邮件   模式   代码   服务器   标题   行情   项目   数据
 for i in range(len(resopnse['data'])):
     # 匹配查询的名字
     name = resopnse['data'][i]['name']
     if monitor_name == name:
         print('名字匹配成功')
  • 名字匹配成功,监控价值,超过指定价值发送邮件提醒
 # 得到价值
 crt_amount = resopnse['data'][i]['crt_amount']
 # 匹配监控的价值
 # ! 原网站显示的时候后面少了两个00,这里是测试,未作处理
 if int(monitor_price) >= crt_amount:
     # 发邮件提醒
     # ! 接受邮箱是个列表list,不要写成字符串str
     标题 = '你关注的iNFR中分类' + u_id + '旗下的' + monitor_name + '价格达到了' + monitor_price
     Send_Email('你的发件邮箱', '邮箱授权码',['你的收件邮箱'], 标题, '内容', 'smtp.qq.com')
         

发邮件提醒

  • 发邮件提醒有以下注意事项:

1.你发邮件的邮箱要开启stmp模式XHA拜客生活常识网

2.邮箱授权码不是你登录邮箱的密码,而是你后台授权码XHA拜客生活常识网

3.具体如何设置,这里不做说明,请自行百度XHA拜客生活常识网

  • 发邮件代码

1.my_email 发件邮箱XHA拜客生活常识网

2.pwd 邮箱授权码XHA拜客生活常识网

3.send_email 收件邮箱(列表模式)XHA拜客生活常识网

4.mail_title 邮件标题XHA拜客生活常识网

5.mail_content 邮件内容XHA拜客生活常识网

6.smtp_server 邮箱服务器XHA拜客生活常识网

 def Send_Email(my_email, pwd, send_email, mail_title, mail_content, smtp_server):
     email = MIMEMultipart()
     email['Subject'] = Header(mail_title, 'utf-8')
     email['From'] = my_email
     email['To'] = ";".join(send_email)
     email.attach(MIMEText(mail_content, 'plain', 'utf-8'))
     try:
         smtp = SMTP_SSL(smtp_server)
         # ! 跟服务器打招呼,告诉它我们准备连接,最好加上这行代码
         smtp.ehlo(smtp_server)
         smtp.login(my_email, pwd)
         smtp.sendmail(my_email, send_email, email.as_string())
         smtp.quit()
         print("发送成功")
     except SMTPException:
         print("发送失败")

整个代码详情

 # -*- coding: utf-8 -*-
 # @Author: cxys_dragon
 # @Date:   2022-05-11 22:15:17
 # @Last Modified by:   cxys_dragon
 # @Last Modified time: 2022-05-12 23:08:30
 from requests import get
 from email.header import Header
 from email.mime.multipart import MIMEMultipart
 from email.mime.text import MIMEText
 from smtplib import SMTP_SSL, SMTPException
 
 # todo 发邮件
 def Send_Email(my_email, pwd, send_email, mail_title, mail_content, smtp_server):
     email = MIMEMultipart()
     email['Subject'] = Header(mail_title, 'utf-8')
     email['From'] = my_email
     email['To'] = ";".join(send_email)
     email.attach(MIMEText(mail_content, 'plain', 'utf-8'))
     try:
         smtp = SMTP_SSL(smtp_server)
         # ! 跟服务器打招呼,告诉它我们准备连接,最好加上这行代码
         smtp.ehlo(smtp_server)
         smtp.login(my_email, pwd)
         smtp.sendmail(my_email, send_email, email.as_string())
         smtp.quit()
         print("发送成功")
     except SMTPException:
         print("发送失败")
 
 
 
 # todo 监控程序
 def Monitor(u_id,monitor_name,monitor_price):
     '''
     u_id            匹配需要查询的对应ID值
     monitor_name    监控NFT的名字
     monitor_price   监控NFT的价值
     '''
     headers = {
     'User-Agent': r'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36',
     'Cookie': 'Hm_lvt_97ec653ce3458e152c3a8bc9e02fa66d=1652278211; Hm_lpvt_97ec653ce3458e152c3a8bc9e02fa66d=1652278269'
     }
     category = {
         'all' : 'all',
         'iBox' : 'c8gb15q2dtei4q721ukg',
         '唯一艺术' : 'c8gcana2dtei4q721ur0',
         'zTag':'c8uvgr9uk5rrg142ol02',
         '优版权':'c98g101uk5ro4vqnqjeg',
         '幻藏':'c98gb69uk5ro4vqnqka0',
         'Art Meta':'c98gdt9uk5ro4vqnqkgg',    
     }
     url = 'https://xxx.xxx.xxx/xx/tourist/platform/detective/rt/query?platform_id=' + category[u_id]
     resopnse = get(url=url,headers=headers).json()
     for i in range(len(resopnse['data'])):
         # 匹配查询的名字
         name = resopnse['data'][i]['name']
         if monitor_name == name:
             # 得到价值
             crt_amount = resopnse['data'][i]['crt_amount']
             # 匹配监控的价值
             # ! 原网站显示的时候后面少了两个00,这里是测试,未作处理
             if int(monitor_price) >= crt_amount:
                 # 发邮件提醒
                 # ! 接受邮箱是个列表list,不要写成字符串str
                 text = '你关注的iNFR中分类' + u_id + '旗下的' + monitor_name + '价格达到了' + monitor_price
                 Send_Email('你的发件邮箱', '邮箱授权码',['你的收件邮箱'], 标题, '内容', 'smtp.qq.com')
                 break
         
 
 
 Monitor('iBox','仙境','4499900')    

相关阅读:

  • 1sdr等于多少人民币(sdr的价值如何计算)
  • 暴力熊有收藏价值吗
  • 账面价值和账面价值的区别,账面成本与账面价值的区别
  • 只有愚蠢的人,一辈子只讲感情;只有高等文明的人,才能理解
  • 我有一张编号是888888的人民币,请问有没有收藏价值?
  • 俗语“人到四十九,四地别久留”,说得很有道理
  • 中兴通讯2022年第一季度净利22.17亿同比增长1.6%
  • 李湘带女儿晒隔离生活,用价值上万烤箱做烤鸡,与王岳伦互
  • 汪小菲母子直播:价值几千的礼物满天飞,三小时,营业额起码
  • 定制钻戒防坑指南,一定要重视的四个细节
    • 网站地图 |
    • 声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不做权威认证,如若验证其真实性,请咨询相关权威专业人士。