HYTRON1刀香港机-电报通知脚本详细教程

转自gracemoon from loc
说明:
监控脚本运行在Debian11系统
给 那些需要的人(联通和移动延迟在100ms左右,电信250ms都不奇怪,绕美了)
熬夜不可行,不要为了蹲一个鸡伤了身子 《HYTRON1刀香港机-电报通知脚本详细教程》 

——-
安装Python
在终端中输入以下命令来安装Python:

sudo apt update
sudo apt install python3
这将安装Python 3.x版本。如果您需要安装Python 2.x版本,请将上述命令中的“python3”替换为“python”。

安装所需的库
在终端中输入以下命令来安装所需的Python库:

apt install python3-pip
pip3 install requests
pip3 install beautifulsoup4
pip3 install python-telegram-bot
这将安装requests、beautifulsoup4和python-telegram-bot库。

创建Telegram Bot并获取API令牌
请按照Telegram的文档说明创建一个telegramBot(很简单,谷歌就行),获取API令牌。将API令牌保存在一个安全的地方,以便稍后使用。
(如果你此前有电报bot,复制出 API token 和您的 Telegram 用户 ID备用)

可以在/root目录下(一般默认进入系统就是在此目录下)编写Python代码 monitor.py,执行:
nano monitor.py
#(使用vi monitor.py也可以,看你喜欢)

将以下代码复制并粘贴到您的文本编辑器中,并将【API token令牌替换】【用户 ID替换】替换为您自己的API令牌和Chat ID。

##复制下面 从这里开始
import requests
from bs4 import BeautifulSoup
import telegram
import asyncio

# 填写 Telegram Bot 的 API token 和您的 Telegram 用户 ID,保留单引号,只修改这两个
bot_token = ‘API token令牌替换’
telegram_user_id = ‘用户 ID替换’

# 从网页获取数据并解析
url = ‘https://idc.hytron.io/index.php?rp=/store/hkbgp-standard’
response = requests.get(url)
soup = BeautifulSoup(response.text, ‘html.parser’)
qty_element = soup.find(id=’product1′).find(class_=’qty’)

# 获取当前的数量值
qty_text = qty_element.text.strip()
qty = int(qty_text.split(‘ ‘)[0])

# 如果数量不为零,向 Telegram 用户发送消息
async def check_availability():
    bot = telegram.Bot(token=bot_token)
    await bot.send_message(chat_id=telegram_user_id, text=f”hytron1刀有货,当前数量为{qty}”)

if qty > 0:
    asyncio.run(check_availability())

### 复制上面 到这里结束

并使用以下命令在终端中运行Python代码:

python3 monitor.py
Python代码将开始运行,并在可用余量大于0时向您的Telegram Bot发送一条消息。如果出现任何错误,Python代码将在终端中打印错误信息。
如果没有任何提示,表示当前没有可用的库存,你也可以将上面的python脚本中id=’product1’,修改为id=’product2′ 临时验证电报是否可用。

一切没问题后,使用定时任务
为了让Python代码定期运行,您可以使用Linux的定时任务工具cron。在终端中输入以下命令以编辑cron表:

crontab -e
然后添加以下行来设置定时任务,例如每隔10秒运行一次:

* * * * * sleep 10 && /usr/bin/python3 /root/monitor.py
请将“/root/monitor.py”替换为您保存Python代码的实际路径。保存并退出cron表后,定时任务将自动启动,并按照您设置的时间间隔运行Python代码。

——-
下面是机器人通知的大致效果

点赞

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注