黑洞HTTP

黑洞HTTP

您的位置: 首页 > 新闻资讯 > HTTP代理 > 正文

零基础也能看懂的Python下载网易云音乐爬虫

发布时间:2019年04月18日 来源:http://http.hunbovps.com/News/getList/catid/8/id/335.html

  零基础也能看懂的Python下载网易云音乐爬虫,配置基础


  Python


  Selenium(配置方法参照:Selenium配置)


  Chrome浏览器(其它的也可以,需要进行相应的修改)


  解析


  以前抓取过网易云网页的朋友可能都清楚网易云有反爬虫策略的,post时要对部分信息的参数完成加密函数的模拟。为了方便,入门新手也可以了解,直接采用Selenium来模拟登录,之后用接口来下载音乐和歌词。


  实验步骤:


  通过歌手id得到当前歌手的热门歌曲信息,歌名与网址,并且存储到CSV文件里面;


  载入csv文件,通过音乐链接,获取歌曲ID,之后借助相应的接口,下载歌曲和歌词;


  将歌曲和歌词存储到本地。


  Python实现


  这里针对几个主要的函数来说明…


  抓取歌手信息


  通过Selenium就不用看对页面的请求了,能直接从页面源代码中提取对应的数据,查看歌手网页源代码能够看到在iframe框架里有我们需要的信息,因此,要先切换到iframe:


  browser.switch_to.frame('contentFrame')


  接着看下去,在id=”hotsong-list”标签中能看到需要的歌名以及链接,然后每一行对应的是一个tr标签。因此先取得全部的tr内容,然后遍历单个tr。


  data = browser.find_element_by_id("hotsong-list").find_elements_by_tag_name("tr")


  注意:前一个是find_element,后一个是find_elements,后者返回一个列表。


  然后就是解析单个tr标签的内容,得到歌名与链接,可以发现两者在class=”txt”标签中,而且链接是href属性,名字是title属性,能直接通过get_attribute()函数获取。


零基础也能看懂的Python下载网易云音乐爬虫

  链接中的数字就是歌曲的id,因此我们得到歌曲id后,能够同时从该链接下载歌词,歌词文件是json格式,因此我们还要用到json包。


  并且同时获取的歌词中,每行有一个时间轴,还要用正则表达式来去除,完整代码如下:

零基础也能看懂的Python下载网易云音乐爬虫

  链接中的数字为歌曲的id,可以直接根据歌曲的id来下载音频文件。完整代码如下:

  

零基础也能看懂的Python下载网易云音乐爬虫

相关文章内容简介

1 零基础也能看懂的Python下载网易云音乐爬虫

  零基础也能看懂的Python下载网易云音乐爬虫,配置基础  Python  Selenium(配置方法参照:Selenium配置)  Chrome浏览器(其它的也可以,需要进行相应的修改)  解析  以前抓取过网易云网页的朋友可能都清楚网易云有反爬虫策略的,post时要对部分信息的参数完成加密函数的模拟。为了方便,入门新手也可以了解,直接采用Selenium来模拟登录,之后用接口来下载音乐和歌词。  实验步骤:  通过歌手id得到当前歌手的热门歌曲信息,歌名与网址,并且存储到CSV文件里面;  载入csv文件,通过音乐链接,获取歌曲ID,之后借助相应的接口,下载歌曲和歌词;  将歌曲和歌词存储到本地。  Python实现  这里针对几个主要的函数来说明…  抓取歌手信息  通过Selenium就不用看对页面的请求了,能直接从页面源代码中提取对应的数据,查看歌手网页源代码能够看到在ifr [阅读全文]

热门标签

最新标签

推荐阅读

  1. 03

    2019-04

    关于HTTP代理IP的认知误区

    什么是HTTP代理IP?通俗的来说,就是换IP的。

  2. 20

    2019-11

    代理ip如何解决爬虫ip被限制?

    做技术的或者是互联网行业的人可能都比较清楚,网络爬虫对于互联网的共享是非常大的,其中有超过一半的流量都是网络爬虫的贡献,如果一个网站不设置发爬虫机制,那就会成为一个透明的

  3. 20

    2019-08

    IP代理是什么?有什么作用呢?

    我们常说的代理IP也就是代理服务器,主要功能就是保护用户的信息安全,起到一个防火墙的作用.大多数的代理服务器会被用来连接互联网和局域网。

  4. 18

    2019-06

    Python爬虫必须用ip代理

    Python爬虫必须用ip代理,倘若没有了代理ip将寸步难行,但也很多人觉得代理ip不是必需品,能够用爬取工具代替,所以网络爬虫必须要用代理ip软件吗?

  5. 15

    2019-08

    关于使用代理ip进行挖掘的常见问题

    虽然 代理服务器 特别昂贵但并不是特别贵啦,但重要的是要把事情放在眼前,并认识到如果你的目标网站检测到你并且提供了伪造的信息,这可能会导致更大的资金负担; 在这一点上,支付具

  6. 12

    2019-11

    代理ip中的HTTP报文的语法

    所有的HTTP报文都是可以分为两类,请求报文(request message)和响应报文(response message)。请求报文会向Web服务器请求一个动作。响应报文会将请求的结果返回给客户端。请求和响应报文的基本报