听说斯巴达挺难抢的,我自己盯过几个tg的群组,发现斯巴达放货挺少。
或者有货的时候我恰好没有关注tg群组,错过了不少的优惠。
这个代码的功能就是监控斯巴达或者其它几个vps网站,只要没有出现关键字“Out of Stock”就代表这个链接目前是有货的。
代码如下:
import smtplib
import requests
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
def check_keyword(urls, keyword):
for url in urls:
try:
# 发送GET请求获取网页内容
response = requests.get(url)
response.raise_for_status()
# 检查关键字是否存在于网页内容中
if keyword not in response.text:
send_email(sender_email, receiver_email, "有货了,快来买啊!", f"关键字 '{keyword}' 未在网页中找到。所以官方上货了,快打开地址去买:{url}", smtp_server, smtp_port, username, password)
except requests.exceptions.RequestException as e:
print("请求网页出错:", str(e))
def send_email(sender_email, receiver_email, subject, message, smtp_server, smtp_port, username, password):
# 创建一个包含邮件内容的MIMEMultipart对象
msg = MIMEMultipart()
msg['From'] = sender_email
msg['To'] = receiver_email
msg['Subject'] = subject
# 添加邮件正文
msg.attach(MIMEText(message, 'plain'))
try:
# 连接SMTP服务器
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls()
# 登录到SMTP服务器
server.login(username, password)
# 发送邮件
server.sendmail(sender_email, receiver_email, msg.as_string())
print("邮件发送成功!")
except Exception as e:
print("邮件发送失败:", str(e))
finally:
# 关闭连接
server.quit()
# 发送方邮箱配置
sender_email = "aaaaa@qq.com"
smtp_server = "smtp.qq.com"
smtp_port = 25
username = "aaaaa@qq.com"
password = "xxxxxxxxxxxxxxxx"
# 接收方邮箱
receiver_email = "xxccvvbbnn@gmail.com"
# 要监控的网页URL列表
urls = [
"https://billing.spartanhost.net/store/ddos-protected-ssd-premium-kvm-vps-seattle/512mb-seakvm",
"https://www.example.com",
"https://www.example.org"
]
# 要检查的关键字
keyword = "Out of Stock"
# 调用检查关键字函数
check_keyword(urls, keyword)
测试截图:
如您所猜测的一样,这个代码是chatgpt写的,还是那个原因,我不会。
测试过后,发现python确实有点用,在某些方面真的非常香。
正文结束