从零开始,搞定鞍重股份最新公告实时查询
我这人比较轴,炒股就是喜欢自己动手查资料,不喜欢被那些软件推送牵着鼻子走。特别是对于我关注的几只票,像这个鞍重股份,它的公告发布时间经常不规律,有时候上午,有时候下午,搞得我总得时不时去交易所网站刷一下,烦得很。

琢磨了好久,我决定自己搞一套能实时监控它最新公告的小程序。说干就干,我拉起袖子就开始动工。
第一步:确定数据源和抓取路径
得知道去哪儿找它的公告。国内的A股公司,基本上都在深交所或者上交所挂着。鞍重股份是在深交所。我直接打开了深交所的官方网站,找到了“信息披露”那个板块,然后搜“鞍重股份”。
我在浏览器里打开开发者工具,盯着看我点来点去,发现公告列表是通过一个API接口调用的。这个接口返回了一堆JSON数据,里面清清楚楚写着公告标题、发布时间、还有PDF文件的链接。这下心里就有底了,不用去吭哧吭哧解析复杂的HTML页面。
第二步:编写抓取和解析代码
我选了Python,主要是用它写抓取脚本最顺手,几个库就能搞定。我先用requests库去访问那个深交所的API地址。为了模拟得更像真人访问,我还加了请求头,伪装了一下用户代理。
数据拿回来是JSON格式的,用json库一解析,立马就能变成Python字典或者列表,操作起来就方便多了。

我写了个小循环,专门从返回的数据里挑出公告发布时间和公告标题。每次抓取,我都只取最新的那几条。
第三步:实现“实时”监控逻辑
“实时”这俩字听着玄乎,就是不停地去问。我设置了一个定时任务,让我的脚本每隔三分钟就去抓取一次深交所的最新数据。三分钟足够了,毕竟公告不是秒发火箭,没必要一秒钟跑一次。
但是,不能每次都一股脑推送给我。我得知道哪些是新的。我搞了一个小小的本地数据库,用的是SQLite,专门用来存储我已经处理过的公告标题和发布时间。每次抓取到新数据,我会先去数据库里查一下,如果这条公告的标题在库里没有,那就说明这是第一次看到,也就是“最新动态”。
- 抓取数据
- 对比本地数据库
- 发现新的公告
- 推送通知
第四步:通知机制的搭建
光发现新公告没用,得能提醒我。我最开始想着发邮件,但邮件太慢了,而且经常被当成垃圾邮件。后来我用了微信推送的一个小服务,那个服务提供了API,只要我往它的接口扔一段文本,它就能立马推送到我的手机微信上。
当脚本发现新的鞍重股份公告时,它会立刻构造一条消息,包括“【新公告】”的提醒、公告标题,以及发布时间,然后通过这个服务推送到我的手机。那叫一个方便,叮咚一声,我就知道有新情况了。
最终效果与体会
这套系统跑起来之后,我现在基本上是第一时间就能掌握鞍重股份的任何动态。再也不用傻等或者频繁刷网页了。有时候我在外面跑业务,手机一震,新公告就来了。这比那些炒股软件自带的推送效率高多了,而且更精准,只针对我关注的那几只票。
自己动手搞这些东西,虽然花点时间,但心里踏实,而且还能学到不少东西。现在这套脚本运行得稳稳当当,只要深交所的API接口不大幅度变动,我都能继续用下去。实践出真知,诚不欺我。

还没有评论,来说两句吧...