吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 5327|回复: 16
收起左侧

[Python 转载] 云函数监控游戏降价(支持监听多款游戏)

  [复制链接]
涛之雨 发表于 2021-6-3 10:46
本帖最后由 涛之雨 于 2021-6-3 10:47 编辑

首先准备好游戏的APPID(DLC的ID也可以,推荐一个网站:https://steamdb.info/

# # -*- coding: utf8 -*-
import json,requests
import requests
import smtplib
from email.header import Header
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart

IDs=[111111,222222]#这里是需要监听的游戏APPID
url='https://store.steampowered.com/api/appdetails/?appids='

def main_handler(event, context):#这个是默认入口
    text_info=""
    isbuy=False
    for ID in IDs:
        ID=str(ID)
        res=requests.get(url+ID).json()
        if res[ID]["success"] is True:
            price=res[ID]["data"]["price_overview"]["final"]/100
            rawprice=res[ID]["data"]["price_overview"]["initial"]/100
            if rawprice>price:
                buy="正"
                isbuy=True#有一个降价了就通知
            else:
                buy="未"
            print("["+res[ID]["data"]["name"]+"@"+ID+"]当前价格:%s,历史价格:%s;【%s】在促销"%(price,rawprice,buy))
            text_info+="["+res[ID]["data"]["name"]+"@"+ID+"]当前价格:%s,历史价格:%s;【%s】在促销"%(price,rawprice,buy)+"\n\n"
        else:
            print("["+res[ID]["data"]["name"]+"@"+ID+"]读取失败!")
    if isbuy is True:
        sender_mail = '发送邮箱@qq.com' #这里填发件人邮箱,我选的QQ邮箱
        sender_pass = 'rgmxxxxxxceg' #这里填QQ邮箱SMTP授权码
        to='接收邮箱(可以还填自己的QQ邮箱)@52pojie.cn'
        msg_root = MIMEMultipart('mixed')# 设置总的邮件体对象,对象类型为mixed
        msg_root['From'] = '云函数steam价格监听'#发送人描述
        msg_root['To'] = to
        subject = 'steam监听价格变动!'  #邮件标题
        msg_root['subject'] = Header(subject, 'utf-8')

        text_sub = MIMEText(text_info, 'plain', 'utf-8')
        msg_root.attach(text_sub)

        try:
            sftp_obj =smtplib.SMTP('smtp.qq.com', 25)
            sftp_obj.login(sender_mail, sender_pass)
            sftp_obj.sendmail(sender_mail, to, msg_root.as_string())
            sftp_obj.quit()
            print('邮件推送成功!')

        except Exception as e:
            print('邮件推送失败!错误代码:')
            print(e)
    return text_info

再加一个半小时的触发器,美滋滋监听价格

定时.png

如果想测试效果可以把

if isbuy is True:

改成

if True is True:

(测试完记得改回来)

测试示意图:

价格.png

(又水了一贴真开心,其实我是帮朋友写的,又能白嫖朋友的游戏更开心)



免费评分

参与人数 8吾爱币 +19 热心值 +6 收起 理由
大凯爺 + 1 + 1 给大佬磕头
tippy + 1 + 1 谢谢@Thanks!
TLH + 1 我很赞同!
苏紫方璇 + 7 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
冥界3大法王 + 4 + 1 自己动手就是好的!
kk52140 + 1 + 1 给隐形守护者加分
正己 + 3 + 1 666
alittlebear + 1 666

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

正己 发表于 2021-6-3 12:54
涛涛NB
三滑稽甲苯 发表于 2021-6-23 12:21
想把风吹灭的火 发表于 2021-6-3 15:59
不对吧,云函数没办法保存数据,每次运行都是获取到的当前价格,如何进行价格比对呢?只能引入数据库,腾讯 ...

看lz代码应该是同时爬取当前价格和历史价格,从而进行比对
liangqz 发表于 2021-6-3 10:50
黑羽快斗 发表于 2021-6-3 12:16
消息提醒可以用qmsg,企业微信吗?

点评

可以自己实现嘛。就是随手写完就发出来了。。。 (估计暂时应该没有促销,一个月后夏促应该会有)  详情 回复 发表于 2021-6-3 14:18
 楼主| 涛之雨 发表于 2021-6-3 14:18
黑羽快斗 发表于 2021-6-3 12:16
消息提醒可以用qmsg,企业微信吗?

可以自己实现嘛。就是随手写完就发出来了。。。
(估计暂时应该没有促销,一个月后夏促应该会有)
king82 发表于 2021-6-3 15:36
隐形守护者好评。
想把风吹灭的火 发表于 2021-6-3 15:59
不对吧,云函数没办法保存数据,每次运行都是获取到的当前价格,如何进行价格比对呢?只能引入数据库,腾讯云函数带数据库是收费的吧。
zxinyun 发表于 2021-6-3 18:47
忠实玩粉,鉴定完毕!
iloveshe 发表于 2021-6-3 19:48
楼主厉害,谢谢分享
smile1110 发表于 2021-6-5 04:43
@涛之雨 快开发一个监控 京东 显卡的,尤其是3080ti!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 14:35

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表