Python帮你识破双11的套路

yipeiwu_com6年前Python基础

一年一度的“双十一”又要来了,很多人已经开始摩拳擦掌,毕竟几天之后手还在不在就不好说了。

各种社交软件也是跟着遭殃,整天就是“来帮我一起盖楼”,各种字体绕过屏蔽,什么奇葩的脑洞也出来了:

不过也感谢这些电商平台,让多年未联系的好友、加过但没有对话的陌生人都找到了打破尴尬的话题。(让场面更加尴尬)

月薪上万的白领们为了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 去嵌入不同家的搜索页即可。

好了,本文结束,希望对大家有所帮助!

相关文章

Python二维码生成识别实例详解

前言 在 JavaWeb 开发中,一般使用 Zxing 来生成和识别二维码,但是,Zxing 的识别有点差强人意,不少相对模糊的二维码识别率很低。不过就最新版本的测试来说,识别率有了现...

PyQt5实现无边框窗口的标题拖动和窗口缩放

网上找了半天都找不到好用的PyQt5无边框窗口的实现,借鉴部分前辈的窗口拖放代码,自己实现了一下无边框窗口,问题可能还有一点,慢慢改吧 先做个笔记 py文件 #!/usr/bin...

将Python字符串生成PDF的实例代码详解

将Python字符串生成PDF的实例代码详解

笔者在今天的工作中,遇到了一个需求,那就是如何将Python字符串生成PDF。比如,需要把Python字符串‘这是测试文件'生成为PDF, 该PDF中含有文字‘这是测试文件'。 ...

Python的subprocess模块总结

subprocess意在替代其他几个老的模块或者函数,比如:os.system os.spawn* os.popen* popen2.* commands.* subprocess最简单...

python中字符串变二维数组的实例讲解

python中字符串变二维数组的实例讲解

有一道算法题题目的意思是在二维数组里找到一个峰值。要求复杂度为n。 解题思路是找田字(四边和中间横竖两行)中最大值,用分治法递归下一个象限的田字。 在用python定义一个二维数组时可以...