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模式
2.邮箱授权码不是你登录邮箱的密码,而是你后台授权码
3.具体如何设置,这里不做说明,请自行百度
- 发邮件代码
 
1.my_email 发件邮箱
2.pwd 邮箱授权码
3.send_email 收件邮箱(列表模式)
4.mail_title 邮件标题
5.mail_content 邮件内容
6.smtp_server 邮箱服务器
 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')    
     
