使用Python实现实时金价监控并自动提醒功能

 更新时间:2025年05月09日 14:41:46   作者:海拥✘  
在日常投资中,很多朋友喜欢在一些平台买点黄金,低买高卖赚点小差价,但黄金价格实时波动频繁,总是盯着手机太累了,于是我用Python写了一个实时金价监控+自动提醒脚本,可以帮我在金价波动达到盈亏阈值时自动弹窗提醒,告别手动盯盘,需要的朋友可以参考下

工具能干啥?

简单来说就是:

  • 自动盯着黄金价格👀
  • 赚了40块会开心提醒我"可以卖啦!"
  • 亏了60块会哭唧唧提醒我"注意止损!"
  • 每30秒偷偷看一眼价格,完全不用我 操心

手把手教你用

1、先装好这些"食材"

pip install selenium webdriver-manager beautifulsoup4

2、代码实现讲解

代码分为几个关键模块,下面我们逐段解析。

1. 用户输入参数

x = float(input("请输入买入时金价(元/克): "))
y = float(input("请输入买入金额(元): "))
buy_weight = y / x
print(f"买入克数: {buy_weight:.4f} 克")

用户只需输入两项:买入时金价买入金额,程序会自动帮你算出买入的黄金克数(忽略手续费)。

2. 设置无头浏览器(Selenium)

chrome_options = Options()
chrome_options.add_argument("--headless")  # 无界面运行
chrome_options.add_argument("--disable-gpu")
driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)

我们使用 Selenium + webdriver-manager 来实现网页访问,并设置浏览器为“无头模式”,即后台运行,不弹出浏览器窗口,运行更轻便。

3. 抓取实时金价(BeautifulSoup + 正则)

html = driver.page_source
soup = BeautifulSoup(html, 'html.parser')
all_titles = soup.find_all('span', class_='gold-price-persent-title')
...

通过 BeautifulSoup 来解析页面HTML内容,找到金价字段并用正则提取数字,兼容jd移动端页面结构(这个页面PC访问可能为空白,但移动端HTML源码中是有数据的)。

4. 盈亏计算与提醒逻辑

current_value = gold_price * buy_weight
profit = current_value - y
...
if profit >= 40:
    popup("卖出提醒", msg)
elif profit <= -60:
    popup("亏损提醒", msg)

这里是盈利逻辑的核心部分,实时计算你当前账户中黄金价值与初始投资的差额,并在盈亏超过指定值时通过弹窗提醒。

弹窗是通过 ctypes.windll.user32.MessageBoxW 实现的,兼容 Windows 系统,效果如下:

5. 自动循环 + 中断退出

while True:
    ...
    time.sleep(30)

脚本默认每30秒刷新一次网页获取新金价,并自动循环运行。如果你按下 Ctrl + C,脚本会优雅退出并关闭浏览器。

项目实测效果

实际运行过程中,当我输入:

请输入买入时金价(元/克): 780.52
请输入买入金额(元): 10000

程序每半分钟自动更新一次金价,并在达到设定盈亏条件时自动弹出提醒框,及时提示买卖时机,非常实用!

可以拓展的功能

这个项目只是一个基础框架,你可以根据自己的需求继续拓展:

  • 自动绘制金价走势图;
  • 集成邮件或微信推送,可以把popup换成微信机器人通知;
  • 设置运行时间区间(如早9点到晚8点);
  • 接入AI判断买卖信号
  • 可以同时监控支付宝、银行APP的价格……

总结

这个小工具虽然简单,却非常实用,适合有黄金投资习惯的朋友随时监控自己的盈亏情况。通过 Selenium + BeautifulSoup + ctypes 的组合,我们可以实现自动化盯盘、节省精力、提高效率!

以上就是使用Python实现实时金价监控并自动提醒功能的详细内容,更多关于Python金价监控并提醒的资料请关注脚本之家其它相关文章!

相关文章

  • python opencv实现切变换 不裁减图片

    python opencv实现切变换 不裁减图片

    这篇文章主要为大家详细介绍了python opencv实现切变换,不裁减图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • 使用Python给PDF添加文本超链接和图片超链接

    使用Python给PDF添加文本超链接和图片超链接

    超链接是指向特定资源的链接,作为一种有效的导航工具,它能够帮助读者快速访问相关信息,通过在PDF文档中添加文本超链接和图片超链接,你可以显著提升文档的互动性和用户体验,这篇文章将详细介绍如何使用Python给PDF添加文本超链接和图片超链接,需要的朋友可以参考下
    2025-03-03
  • 基于Django signals 信号作用及用法详解

    基于Django signals 信号作用及用法详解

    这篇文章主要介绍了基于Django signals 信号作用及用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • Python数据容器0基础入门解析之字符串到字典

    Python数据容器0基础入门解析之字符串到字典

    在Python编程中有时候我们需要将一个字符串转换为字典的形式,这篇文章主要介绍了Python数据容器0基础入门解析之字符串到字典的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-12-12
  • python3+opencv 使用灰度直方图来判断图片的亮暗操作

    python3+opencv 使用灰度直方图来判断图片的亮暗操作

    这篇文章主要介绍了python3+opencv 使用灰度直方图来判断图片的亮暗操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • 在Pycharm中对代码进行注释和缩进的方法详解

    在Pycharm中对代码进行注释和缩进的方法详解

    今天小编就为大家分享一篇在Pycharm中对代码进行注释和缩进的方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • Python用Pillow(PIL)进行简单的图像操作方法

    Python用Pillow(PIL)进行简单的图像操作方法

    下面小编就为大家带来一篇Python用Pillow(PIL)进行简单的图像操作方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • python网络爬虫采集联想词示例

    python网络爬虫采集联想词示例

    这篇文章主要介绍了python网络爬虫采集联想词示例,需要的朋友可以参考下
    2014-02-02
  • python原始套接字编程示例分享

    python原始套接字编程示例分享

    在实验中需要自己构造单独的HTTP数据报文,而使用SOCK_STREAM进行发送数据包,需要进行完整的TCP交互。因此想使用原始套接字进行编程,直接构造数据包,并在IP层进行发送,即采用SOCK_RAW进行数据发送。使用SOCK_RAW的优势是,可以对数据包进行完整的修改,可以处理IP层上的所有数据包,对各字段进行修改,而不受UDP和TCP的限制。
    2014-02-02
  • django 解决自定义序列化返回处理数据为null的问题

    django 解决自定义序列化返回处理数据为null的问题

    这篇文章主要介绍了django 解决自定义序列化返回处理数据为null的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05

最新评论