V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
iray1991
V2EX  ›  问与答

如何抓取淘宝商品实时库存?

  •  1
     
  •   iray1991 · 2016-07-11 02:22:42 +08:00 · 9341 次点击
    这是一个创建于 3050 天前的主题,其中的信息可能已经有所发展或是发生改变。
    2 条回复    2017-04-06 00:48:13 +08:00
    xiaocsl
        1
    xiaocsl  
       2016-07-11 06:22:45 +08:00   ❤️ 2
    挺简单的,说一下过程吧.希望你能学会"渔".

    1) 打开你的给的商品后发现库存都是个位数,立刻就去随便搜索了一个库存数稍微大一些的商品.( https://item.taobao.com/item.htm?id=531414649886 )
    2)打开 Fiddler 发送请求.然后在 Ctrl + F 搜索了某个 SKU 的库存 "689" 符合条件的只有个位数请求,一眼望过去,有一个域名是:" detailskip.taobao.com " 点开发现包含所有库存信息.获取到请求地址 https://detailskip.taobao.com/service/getData/1/p2/item/detail/sib.htm?itemId=528392541802&modules=qrcode,viewer,price,contract,duty,xmpPromotion,dynStock,delivery,upp,sellerDetail,activity,fqg,zjys,coupon&callback=onSibRequestSuccess
    3)将请求中的 itemId 的值换成需要获取的商品 ID ,直接浏览器请求,返回 403.确认服务器有验证,观察 Fiddler 中的请求,除了 "Referer" 并无其他信息
    4)请求时增加个 "Referer" 正常工作.到这里就全部完成了.

    额外提醒,这里并没有验证更多信息,比如说请求次数限制等问题,如果碰到可以尝试抓一下各个平台的接口测试.
    001155
        2
    001155  
       2017-04-06 00:48:13 +08:00   ❤️ 1
    2017 年 4 月 6 日 https://detailskip.taobao.com/service/getData/1/p2/item/detail/sib.htm?itemId=528392541802&modules=qrcode,viewer,price,contract,duty,xmpPromotion,dynStock,delivery,upp,sellerDetail,activity,fqg,zjys,coupon&callback=onSibRequestSuccess

    请求这个接口一直 403
    模拟请求的时候要在 header 设置一下来源页面 referer 属性为你要抓取的宝贝链接 ,就可以成功获取了
    header={
    "referer":"https://item.taobao.com/item.htm?id=524122865207"
    }
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2904 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 07:58 · PVG 15:58 · LAX 23:58 · JFK 02:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.