关于TB的post秒杀原理 爬虫攻防参考

       学了爬虫有一段时间了,花了几个月对某商城的下单流程进行模拟,下面手把手教学,并分析一些握手的原理。希望大家看完能得到一些对爬虫防范的启发与思考。

        购物商场下单分为两个大流程,提交订单和确认订单。逐一分析:

提交订单

这边以淘宝商城为例进行分析。

商品链接:https://detail.tmall.com/item.htm?id=600411925165&spm=a1z0k.6846577.0.0.32082a61FCZYot&_u=t2dmg8j26111&skuId=4647223169012

      打开chrome浏览器,进入 taobao.com,登录淘宝后进入商品链接,并按F12打开控制台,按图示完成两步操作。

    然后点击立即购买,找到第一个html文件点击进行图示操作。

经过一波分析和不断地重复实践可得知提交订单需要一个URL及表单参数buy_param。首先是对URL的分析,我获取订单的URL:https://buy.tmall.com/order/confirm_order.htm?x-itemid=600411925165&x-uid=3031716560

经过切换不同的商品进行订单的提交可发现:

其中只有 x-itemid 发生了变化,由此可知URL组成:https://buy.tmall.com/order/confirm_order.htm? + x-itemid + x-uid

此时回到商品详情页:https://detail.tmall.com/item.htm?id=600411925165&spm=a1z0k.6846577.0.0.32082a61FCZYot&_u=t2dmg8j26111&skuId=4647223169012

各参数如图所示:

对比订单所需参数 buy_param:600411925165_1_4647223169012,发现 其由店铺ID:600411925165 + 购买数量(推测得出) + 商品skuid:4647223169012 组成;通过这几个参数的组合可得到 buy_param。

而URL 中的 x-uid 可直接搜索网页源代码找到,后面用正则匹配可以得出各参数值。如图:

这样通过py的request请求即可获取订单。因博主时间有限,暂不分析确认订单所需参数及方法,但完整源码+注释已完成,感兴趣的同学可直接加企鹅群带走源码进行测试。

企鹅: 610600351

其中已完成的部分包括,扫码登录,cookie 保持,滑块验证(失效),以及下单。

欢迎诸位带走测试,也希望能让大家通过阅读代码得到爬虫方面的攻防启发。

如下次有空再补坑。

  • 2
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值