您的位置:首页 > 新闻资讯 >文章内容
实战:爬虫利用IP代理去爬取喜马拉雅的音频数据
来源:互联网 作者:admin 时间:2019-04-10 18:03:09

爬虫利用IP代理去爬取喜马拉雅的音频数据,这方法可行吗?因为网站有限制,我们使用IP代理先处理这个IP限制的问题,这样爬取就会顺利些。

本次爬取的是喜马拉雅的热门栏目下全部电台的每个频道的信息和频道中的每个音频数据的各种信息,然后把爬取的数据保存到mongodb以备后续使用。这次数据量在70万左右。音频数据包括音频下载地址,频道信息,简介等等,非常多。

爬虫利用IP代理去爬取喜马拉雅的音频数据的案例分析如下:

1.首先进入这次爬取的主页面 ,可以看到每页12个频道,每个频道下面有很多的音频,有的频道中还有很多分页。抓取计划:循环84个页面,对每个页面解析后抓取每个频道的名称,图片链接,频道链接保存到mongodb。

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据

2.打开开发者模式,分析页面,很快就可以得到想要的数据的位置。下面的代码就实现了抓取全部热门频道的信息,就可以保存到mongodb中。

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据


3.下面就是开始获取每个频道中的全部音频数据了,前面通过解析页面获取到了美国频道的链接。

比如我们进入 http://www.ximalaya.com/6565682/album/237771 这个链接后分析页面结构。可以看出每个音频都有特定的ID,这个ID可以在一个div中的属性中获取。使用split()和int()来转换为单独的ID。

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据

4.接着点击一个音频链接,进入开发者模式后刷新页面然后点击XHR,再点击一个json链接可以看到这个就包括这个音频的全部详细信息。

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据

5.上面只是对一个频道的主页面解析全部音频信息,但是实际上频道的音频链接是有很多分页的。

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据


6.全部代码

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据

7.如果改成异步的形式可以快一点,只需要修改成下面这样就行了。我试了每分钟要比普通的多获取近100条数据。这个源代码也在github中。

实战:爬虫利用IP代理去爬取喜马拉雅的音频数据

这次抓取的数据量在70万左右,这些数据后续可以进行很多研究,比如播放量排行榜、时间区段排行、频道音频数量等等。后续我将继续学习使用科学计算和绘图工具来进行数据分析,清洗的工作。

以上分享了爬虫利用IP代理去爬取喜马拉雅的音频数据的案例,大家可以参考下,或者是分享更多的爬取方法的。


相关文章内容简介
推荐阅读
  • 09 2019-10
    代理IP的选用攻略

    现在提供代理IP的服务商是越来越多了,用户是挑的眼花缭乱,大家都说自家的IP质量好、够稳定,可是一使用问题就会显示出来了。我们在挑选使用的代理IP时候,要从哪些方面去判断呢?下面

  • 27 2019-06
    http代理提供足够多的IP数量

    http代理提供足够多的IP数量,可以容易的解决各种对于IP的限制,这个IP被限制了,马上可以引入http代理更换其他的IP地址,秒换IP都行,何必要等IP解封呢?

  • 19 2019-03
    IP代理无效?检查爬虫有没有陷进这些误区

    一些专门采集信息的网络爬虫并不受各网站的欢迎,甚至还会设置重重的关卡来限制爬虫的访问,但何为我们使用了IP代理还是无效的,一直突破不了IP限制,这倒是是IP代理的问题,还是其他的

  • 03 2019-09
    如何判断代理IP的匿名性?

    代理IP是有多种匿名方式的,当然这也是由不同的价格档次决定的。那么,我们在使用代理IP的时候,怎么知道自己购买的IP就真的如同服务商所言,没有受到欺骗呢?虽然检测方式需要由一定的

  • 18 2020-03
    哪种类型代理ip最好用

    代理ip有不同的类型,之前为大家介绍过代理IP的类型分别是透明代理IP、匿名代理IP、高匿名代理IP、混淆代理IP。那么,哪种代理IP在实际应用中最好呢?

  • 02 2019-08
    投票想突破IP验证,http代理来帮忙

    大部分的网络投票程序的防刷系统采用的原理就是IP验证和Cookies验证,当然还有采用诸如身份验证等其他验证方式的网络投票系统,不过目前网络上90%的网络投票系统都是采用前者的验证方式

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部