一年一度的“双十一”又要来了,很多人已经开始摩拳擦掌,毕竟几天之后手还在不在就不好说了。
各种社交软件也是跟着遭殃,整天就是“来帮我一起盖楼”,各种字体绕过屏蔽,什么奇葩的脑洞也出来了:
不过也感谢这些电商平台,让多年未联系的好友、加过但没有对话的陌生人都找到了打破尴尬的话题。(让场面更加尴尬)
月薪上万的白领们为了2块5毛钱的优惠券起早贪黑,也是堪称人类迷惑行为大赏了……
问题是,你以为自己真的赚到了?
商品“明降暗升”的传言早有耳闻:很多商品在双十一之前早早地把价格调高,加上优惠之后也不过就是跟以前的原价相当。让不知情的消费者在心理上感觉占了便宜。
这个传言是不是真的,很好判断,只要定期去访问商品页面,记录价格就可以。不过一般人也没闲工夫这么去做。于是,我们用 Python 做了一个可以定时监控商品的小工具,可以帮你监控想要关注的商品。
工具完成之后,我们随机挑选了几个商品作为测试,结果就有一个中招了……(真的是随便选的):
这款保暖背心产品,之前标价 39.9元,到11月之后却突然调价为 49.9元,并标注上了“双11狂欢价”,也就是原价……
代码实现
识别套路的代码其实并不复杂,主要就2点:
1. 首先要设定你要监控的商品地址,通过 requests 库获取商品信息。
- import requests
- url = '商品链接地址'
- r = requests.get(url)
对于这点来说,不同的网站的情况会有不一样,有的网站直接可以获取,有的需要增加一些 headers 信息;有的内容就在 HTML 页面上,有的则是通过 API 接口传递数据;甚至还有的网站发现你是机器请求时,会给你一个假的价格……我们的代码里以 天猫、苏宁、京东、拼多多 4个平台做为示例,具体差别可以阅读代码。
2. 能抓到价格是第一步,我们还需要能定时抓。Windows 平台上可以通过 任务计划程序 来定时执行你的 py 脚本;Linux 或 Mac 则使用 crontab 功能。这里不赘述,可以网上搜下关键字,文档中我们也给了参考教程链接。
有这两步,就可以起到定时监控商品价格的效果了。为了便于查看,我们还可以增加一步:
3. 用 matplotlib 或者 pyecharts 等绘图库绘制出商品价格时间变化折线图。我们本次工具中选择了后者。
如果你要想使用我们这个工具,只需要按照代码中 goods.csv 文件里的格式,添加你要监控的商品链接,然后按文档中的说明加到对应系统的定时任务里就可以了。
此外,我们还制作了一个小的页面工具,可以让你在一个页面中同时搜索上述四家平台的相同关键字产品,真正的货比“三”家:
这个其实也很简单,就是用 iframe 去嵌入不同家的搜索页即可。