您的位置:首页 > 新闻资讯 >文章内容
实战:爬虫利用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-03
    多线程容易发生死锁的原因?怎么应对多线程的死锁问题?

    爬虫使用多线程的过程中,若不小心,容易出现多线程死锁的情况,这是什么原因导致的呢?什么情况下会发生多线程死锁呢?若是发生多线程死锁,我们应该怎么处理呢?下面就去了解下关于

  • 27 2019-05
    开放代理都有哪些劣势?

    上文讲到不建议使用开放代理,这是为什么呢?因为开放代理的缺点太多啦!正是由于开放代理的一些特性,用于做项目,可能会坑到自己,故不建议的。那么开放代理都有哪些劣势?

  • 03 2019-07
    免费的动态IP好用么?

    免费的动态IP好用么?很多时候,大家都会遇到IP限制的情况,尤其是单IP高频率访问下。遇到这个问题,怎么处理呢?

  • 01 2019-06
    代理IP可用率怎么测试?

    代理IP可用率怎么测试?很多商家都号称自己的代理IP可用率非常高,这到底是不是真的呢,我们可以进行测试下的。

  • 31 2019-03
    怎么获得长期有效的http代理?

    一般是大家使用的代理都是动态ip,都是短效的代理,有效时间估计也就几分钟,久一点的也有半小时左右的,但这有效时间对于一些项目来说,还是太短了,那么怎么获得长期有效的http代理呢

  • 24 2019-07
    免费http代理怎么设置使用?

    免费http代理怎么设置使用?在网上直接找个免费http代理使用很容易的,代理,也称网络代理,是一种特殊的网络服务,允许一个网络终端(客户端)通过这个服务与另一个网络终端(服务器)

在线客服
大客户VIP渠道
点击这里给我发消息
讨论QQ群
HTTP代理IP爬虫
客服电话
13318873961