目标网站:

201903280921107.png

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

201903280921108.png

打印一下

201903280921109.png

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

2019032809211010.png

结果:

2019032809211011.png

一共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 selenium 爬取网易云音乐歌单名相关推荐

  1. python函数中可变参数的传递方式_详解Python函数可变参数定义及其参数传递方式...

    Python函数可变参数定义及其参数传递方式详解 python中 函数不定参数的定义形式如下 1. func(*args) 传入的参数为以元组形式存在args中,如: def func(*args): ...

  2. python中groupby()函数讲解与示例_详解python中groupby函数通俗易懂

    一.groupby 能做什么? python中groupby函数主要的作用是进行数据的分组以及分组后地组内运算! 对于数据的分组和分组运算主要是指groupby函数的应用,具体函数的规则如下: df[ ...

  3. python中heapq的库是什么_详解Python中heapq模块的用法

    详解Python中heapq模块的用法 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  详解Python中heapq模块的用法.txt ] (友情提示:右键点上行t ...

  4. python中get函数是什么意思_详解python中get函数的用法(附代码)_后端开发

    strncmp函数用法详解_后端开发 strncmp函数为字符串比较函数,其函数语法为"int strncmp ( const char * str1, const char * str2, ...

  5. python比较两个字符串相似度_详解Python 字符串相似性的几种度量方法

    字符串的相似性比较应用场合很多,像拼写纠错.文本去重.上下文相似性等. 评价字符串相似度最常见的办法就是:把一个字符串通过插入.删除或替换这样的编辑操作,变成另外一个字符串,所需要的最少编辑次数,这种 ...

  6. python的装饰器迭代器与生成器_详解python中的生成器、迭代器、闭包、装饰器

    迭代是访问集合元素的一种方式.迭代器是一个可以记住遍历的位置的对象.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退. 1|1可迭代对象 以直接作用于 for ...

  7. python中ifelifelse用在什么结构_详解Python if-elif-else知识点

    有的时候,一个 if - else - 还不够用.比如,根据年龄的划分:条件1:18岁或以上:adult 条件2:6岁或以上:teenager 条件3:6岁以下:kid Python if-elif- ...

  8. python for和while的用法区别_详解python while 函数及while和for的区别

    1.while循环(只有在条件表达式成立的时候才会进入while循环) while 条件表达式: pass while 条件表达式: pass else: pass 不知道循环次数,但确定循环条件的时 ...

  9. python最早引入json的版本_详解Python在使用JSON时需要注意的编码问题

    写这篇文章的缘由是我使用 reqeusts 库请求接口的时候, 直接使用请求参数里的 json 字段发送数据, 但是服务器无法识别我发送的数据, 排查了好久才知道 requests 内部是使用 jso ...

最新文章

  1. Jupyter-ROS(机器人操作系统)
  2. extjs 中iframe内存泄漏的问题
  3. 怎么找回失踪的NTLDR文件
  4. 使用mysqladmin命令修改MySQL密码与忘记密码
  5. springcloud服务发现
  6. Android 系统(70)---Android刘海屏适配方案
  7. android跳转到地图app
  8. PuTTY/PuttyGen介绍
  9. 使用闲置迅捷无线路由器桥接指南(扩大WIFI覆盖面)
  10. 360来硬拼,云盘免费用了!新注册就能获得36T容量!
  11. 在国内,如何优雅的使用ChatGPT??
  12. html桌面壁纸教程,Photoshop设计简易版的电脑桌面壁纸教程
  13. 爱普生Epson Stylus Photo T60 打印机驱动
  14. 免费申请 HTTPS 证书,开启全站 HTTPS
  15. 区块链安全————区块链技术安全讨论
  16. 【零基础小白的华丽蜕变】Oracle WebLogic Server 14c(14.1.1.0)下载及安装
  17. JAVA AJAX教程第一章-初始AJAX
  18. r语言赋值为na_R语言数据框中,用0替代NA缺失值
  19. panda3d python_安装 Panda3D 并使用原有的Python
  20. App 应用托管平台

热门文章

  1. 为什么你需要设计和维护一套自我移动标准?
  2. 6个变态的C语言写的Hello World
  3. MPEG-2TS码流编辑的原理及其应用(转载
  4. VUE: 当前页面 引用自定义公用样式 (:style=“样式名“)
  5. eclipse启动出现“An Error has Occurred. See the log file”解决方法
  6. JAVA自学笔记08
  7. Cadence 电源完整性仿真实践(二)
  8. 设计模式之Builder (创建者模式)的一些个人理解(转)
  9. javascript获取事件源对象和产生事件的对象
  10. C#中读取“已注册的文件类型”的图标及读取指定文件图标的方法 (转)