当前位置 主页 > 服务器问题 > Linux/apache问题 >

    Python帮你识破双11的套路

    栏目:Linux/apache问题 时间:2019-11-12 19:18

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

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

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

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

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