详解python selenium 爬取网易云音乐歌单名


Posted in Python onMarch 28, 2019

目标网站:

详解python selenium 爬取网易云音乐歌单名

首先获取第一页的数据,这里关键要切换到iframe里

详解python selenium 爬取网易云音乐歌单名

打印一下

详解python selenium 爬取网易云音乐歌单名

获取剩下的页数,这里在点击下一页之前需要设置一个延迟,不然会报错。

详解python selenium 爬取网易云音乐歌单名

结果:

详解python selenium 爬取网易云音乐歌单名

一共37页,爬取完毕后关闭浏览器

完整代码:

url = 'https://music.163.com/#/discover/playlist/'

from selenium import webdriver
import time
# 创建浏览器对象
window = webdriver.Chrome('./chromedriver')
window.get(url)
time.sleep(1)
# 切换到iframe窗口
iframe = window.find_element_by_id('g_iframe')
window.switch_to.frame(iframe)
music_list = window.find_elements_by_xpath('//ul[@class="m-cvrlst f-cb"]/li')
for music_element in music_list:
 print(music_element.text)
 print()
print('*'*20)

page = 1
# 开始提取
while True:
 time.sleep(2)
 # 获取下一页
 next = window.find_element_by_link_text('下一页')
 if not next.get_attribute('class') == 'zbtn znxt js-disabled':
  next.click()
 else:
  break
 time.sleep(1)
 # 提取数据
 music_list = window.find_elements_by_xpath('//ul[@class="m-cvrlst f-cb"]/li')
 for music_element in music_list:
  print(music_element.text)
  print()
 print(page,'*'*20)
 page+=1
# 退出浏览器
window.quit()

以上所述是小编给大家介绍的python selenium爬取网易云音乐歌单名详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
部署Python的框架下的web app的详细教程
Apr 30 Python
Python中用max()方法求最大值的介绍
May 15 Python
Python中%r和%s的详解及区别
Mar 16 Python
python遍历文件夹下所有excel文件
Jan 03 Python
Python使用re模块实现信息筛选的方法
Apr 29 Python
Python单元测试unittest的具体使用示例
Dec 17 Python
python实现动态创建类的方法分析
Jun 25 Python
python openpyxl使用方法详解
Jul 18 Python
python实现大文本文件分割
Jul 22 Python
flask实现验证码并验证功能
Dec 05 Python
python模拟点击在ios中实现的实例讲解
Nov 26 Python
python munch库的使用解析
May 25 Python
pyqt5利用pyqtDesigner实现登录界面
Mar 28 #Python
Django实现单用户登录的方法示例
Mar 28 #Python
pyqt5实现登录界面的模板
May 30 #Python
python实现AES加密和解密
Mar 27 #Python
详解Python计算机视觉 图像扭曲(仿射扭曲)
Mar 27 #Python
python实现向微信用户发送每日一句 python实现微信聊天机器人
Mar 27 #Python
Pandas读写CSV文件的方法示例
Mar 27 #Python
You might like
PHP 出现乱码和Sessions验证问题的解决方法!
2008/12/06 PHP
PHP Hash算法:Times33算法代码实例
2015/05/13 PHP
PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别分析
2017/07/03 PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
2017/11/14 PHP
js表格分页实现代码
2009/09/18 Javascript
JS去掉第一个字符和最后一个字符的实现代码
2014/02/20 Javascript
jQuery中is()方法用法实例
2015/01/06 Javascript
JQuery实现防止退格键返回的方法
2015/02/12 Javascript
浅谈javascript中的instanceof和typeof
2015/02/27 Javascript
简单介绍jsonp 使用小结
2016/01/27 Javascript
详解Webwork中Action 调用的方法
2016/02/02 Javascript
Nodejs中session的简单使用及通过session实现身份验证的方法
2016/02/04 NodeJs
详解Backbone.js框架中的模型Model与其集合collection
2016/05/05 Javascript
老生常谈JavaScript 正则表达式语法
2016/08/20 Javascript
JS简单获取当前年月日星期的方法示例
2017/02/07 Javascript
js实现水平滚动菜单导航
2017/07/21 Javascript
微信小程序开发之改变data中数组或对象的某一属性值
2018/07/05 Javascript
详解微信小程序canvas圆角矩形的绘制的方法
2018/08/22 Javascript
js删除对象/数组中null、undefined、空对象及空数组方法示例
2018/11/14 Javascript
vue封装一个简单的div框选时间的组件的方法
2019/01/06 Javascript
JavaScript数据结构与算法之检索算法实例分析【顺序查找、最大最小值、自组织查询】
2019/02/22 Javascript
详解如何在vue+element-ui的项目中封装dialog组件
2020/12/11 Vue.js
[00:21]DOTA2亚洲邀请赛 Logo演绎
2015/02/07 DOTA
Python pickle模块用法实例分析
2015/05/27 Python
Python在groupby分组后提取指定位置记录方法
2018/04/20 Python
Python3+Appium安装使用教程
2019/07/05 Python
python pycharm的安装及其使用
2019/10/11 Python
关于Tensorflow分布式并行策略
2020/02/03 Python
pycharm 2018 激活码及破解补丁激活方式
2020/09/21 Python
详解torch.Tensor的4种乘法
2020/09/03 Python
英国最大的百货公司:Harrods
2016/08/18 全球购物
奥巴马连任演讲稿
2014/05/15 职场文书
世界气象日活动总结
2015/02/27 职场文书
二审答辩状格式
2015/05/22 职场文书
大学校园餐饮创业计划书
2019/08/07 职场文书
浅谈Python numpy创建空数组的问题
2021/05/25 Python