淘宝宝贝链接url分析该怎么做?如何抓取呢?

  • 2018-07-02 21:02:02

      网购是一个流行的平台,同时也是一个非常便捷的方式,虽然是在虚拟网络的商品,但是它们都有各自的参数链接,也是商品的另类名牌,那这个淘宝宝贝链接url分析该怎么进行呢?

      一、整体思路

      1、首先你需要一个IP代理池

      2、使用本机IP将淘宝中基本的商品分类抓取下来

      页面源链接:https://www.taobao.com/tbhome/page/market-list

      从页面源链接中解析到的URL形如下:https://s.taobao.com/search?q=羽绒服&style=grid

      3、将诸如此类的URLhttps://s.taobao.com/search?q=羽绒服&style=grid作为任务队列,使用多线程对其进行抓取与解析(使用代理IP),解析的内容为第4点

      4、我们需要分析每一种类的商品在淘宝中大概具有多少数量,为此我解析出带有页面参数的URL,在第3点中URL的基础上:https://s.taobao.com/search?q=羽绒服&style=grid&s=44,在浏览器中打开URL可发现此页面为此种类衣服的第二页

      5、我们得到了每一种商品带有页面参数的URL,意味着我们可以得到此类商品中全部或部分的商品ID,有了商品ID,我们就可以进入商品详情页抓取我们想要的数据了

      6、为了实现第5点,我们先将第4点中抓取到的URL全部存储进MySQL中

      7、从MySQL中将待抓取URL全部取出,存储到一个队列中,使用多线程对此共享队列进行操作,使用代理IP从待解析URL中解析出本页面中包含的商品ID,并构建商品详情页URL

      8、在第7点中解析商品ID的时候,同时使用布隆过滤器,对重复ID进行过滤,并将已经抓取过的URL任务放入Redis缓存中,等达到合适的阈值时,将存储在MySQL中对应的URL行记录中的flag置为true,表示此URL已经被抓取过,等到下一次重启系统,可以不用对此URL进行抓取

      二、实现细节

      我们先从IP代理池说起,在这个项目中所运用到的IP代理池与我在Java网络爬虫(十一)–重构定时爬取以及IP代理池(多线程+Redis+代码优化)这一篇博客中所讲述的IP代理池的实现思想有一些细小的差别。

      三、监控线程

      这个线程的主要作用是将Redis数据库中缓存的,已经成功解析过的任务,将其对应MySQL中所在的行记录中的flag位设置为true。

      一些卖家需要把宝贝放在淘宝站外的网站上推广,这个时候就需要卖家提取无线的链接地址,大家也可以登录淘宝,进入卖家中心点击任意宝贝提取url链接哦!

      推荐阅读:

      淘宝客url参数详解,怎么获得URL链接?

      淘宝客api生成推广url的方法是什么?

      淘宝商品链接参数分析介绍!

    >> 查看更多相似文章

    推荐阅读

    ©Copyright ©2007-2016 www.kaitao.cn (开淘网) All Rights Reserved