Python帮你识破双11的套路

yipeiwu_com7年前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内存管理方式和垃圾回收算法解析

概要 在列表,元组,实例,类,字典和函数中存在循环引用问题。有 __del__ 方法的实例会以健全的方式被处理。给新类型添加GC支持是很容易的。支持GC的Python与常规的Python...

Python批处理删除和重命名文件夹的实例

1. 删除当前目录下不含有指定文件类型的文件夹 #!/usr/bin/python # -*- coding: UTF-8 -*- import sys import os imp...

把项目从Python2.x移植到Python3.x的经验总结

 经历移植jinja2到python3的痛苦之后,我把项目暂时放一放,因为我怕打破python3的兼容。我的做法是只用一个python2的代码库,然后在安装的时候用2to3工具...

Python切片知识解析

切片原型 strs = ‘abcdefg' Strs[start: end:step] 切片的三个参数分别表开始,结束,步长 第一位下标为0,end位不取,如strs[1:3] = ‘b...

django echarts饼图数据动态加载的实例

django echarts饼图数据动态加载的实例

如下所示: 后台关键代码: data = {} #keys与values分别为该数据的键数组,值的数组。这里循环为字典添加对应键值 for k, v in zip(keys, val...