前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

今天来教大家一个自动化爬虫的工具 selenium

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!??¤
QQ群:961562169

selenium

Selenium 是一个 Web 的自动化测试工具,最初是为网站自动化测试而开发的,就像玩游戏用的按键精灵,可以按指定的命令自动操作。

Selenium 测试工具直接操控浏览器中,就像真正的用户在操作一样。Selenium 可以根据的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生等。

项目目标

今天的目标是爬取付费歌曲

受害者地址

http://tool.liumingye.cn/music/?page=homePage

先给大家看下效果

爬虫代码

导入工具

import time
import requests
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

解析网页

打开F12 开发者工具,不管三七二十一,先来一顿瞎分析~

哦豁~ 这里面居然有数据接口,还是post请求,那这样的话就咱们就看它的data参数,那里有变化

driver = webdriver.Chrome(executable_path='chromedriver.exe', options=chrome_options)
# key_world = input('请输入歌手名字:')
driver.get('http://tool.liumingye.cn/music/?page=searchPage')
driver.find_element_by_css_selector('#input').send_keys('张杰')
driver.find_element_by_css_selector('#search  button:nth-child(2) i').click()
def download(name, url):filename = 'C:\\Users\\Administrator\\Desktop\\音乐\\' + name + '.mp3'response = requests.get(url=url)with open(filename, mode='wb') as f:f.write(response.content)def drop_down():"""模拟人去滚动鼠标向下浏览页面"""for x in range(1, 20, 10):time.sleep(0.5)j = x / 10js = 'document.documentElement.scrollTop = document.documentElement.scrollHeight * %f' % jdriver.execute_script(js)lis = driver.find_elements_by_css_selector('#player li')
f = 0
for li in lis:f += 1name = li.find_element_by_css_selector('.aplayer-list-title').textli.find_element_by_css_selector('.aplayer-list-download').click()down_url = driver.find_element_by_css_selector('#m-download > div > div > div.modal-body > div:nth-child(6) > div.input-group-append > a.btn.btn-outline-secondary.download').get_attribute('href')driver.find_element_by_css_selector('#m-download > div > div > div.modal-header > button').click()# time.sleep(1)download(name, down_url)print(name, down_url)if f % 10 == 0:drop_down()

运行代码后,效果如下

让程序像人一样的去批量下载歌曲?Python采集付费歌曲相关推荐

  1. python 爬取歌曲程序_如何让程序像人一样的去批量下载歌曲?Python爬取付费歌曲...

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 今天来教大家一个自动化爬虫的工具 selenium selenium Se ...

  2. ECMWF等大气数据批量下载(Python API)详细步骤

    ECMWF等大气数据批量下载(Python API) 遥感方向做热红外温度反演,不可避免的要用到大气廓线数据,大气数据具有实时性,比如2018年9月1日的早上8点的影像,为了提高反演精度就需要用到时间 ...

  3. Sentinel-2 (哨兵2号) 数据批量下载教程 [python]

    Sentinel-2 [哨兵2号] 数据批量下载教程 [python] 1. 选择数据 2. 数据下载 2.1 下载链接文件 2.2 安装Python及data_downloader包 2.3 创建. ...

  4. 批量下载baidu音乐主页的歌曲

    [代码] 华语 package com;import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileNo ...

  5. 如何提取小程序/APP/网页里图片视频,小程序APP素材抓取软件批量下载图片音频?

    通常我们在看到某一个好的小程序素材想下载来参考时?会思考以下问题: "怎么下载别人小程序里的图标呀?" "怎么抓取小程序的图片.图标之类的?" "怎么 ...

  6. 如何使用python批量下载-使用 Python + Selenium 批量下载素材

    原文首发于CSDN,略有增删 使用 Python + Selenium 批量下载素材 本文简单介绍使用 Python + Selenium 从ManyPixels线上图库批量下载素材的方法.截止到现在 ...

  7. python批量下载文件-python使用selenium实现批量文件下载

    背景 实现需求:批量下载联想某型号的全部驱动程序. 一般在做网络爬虫的时候,都是保存网页信息为主,或者下载单个文件.当涉及到多文件批量下载的时候,由于下载所需时间不定,下载的文件名不定,所以有一定的困 ...

  8. 如何使用python批量下载-用Python调用迅雷实现后台批量下载

    迅雷9.10实测可用,老版本迅雷应该也可以用,不推荐迅雷极速版 写在前面 最近在学习python的网络爬虫,想要爬取某个网站上的上百万条链接,批量下载链接所指向的图片.文档.视频等内容.大部分的小文件 ...

  9. python批量下载文件-Python实现批量下载文件

    Python实现批量下载文件 #!/usr/bin/env python # -*- coding:utf-8 -*- from gevent import monkey monkey.patch_a ...

  10. 【MODIS】MODIS数据的两种批量下载方法 - Python和Wget

    平时使用MODIS的数据做科研,都不是使用一天或者几天的数据,都是使用几年的数据.所以介绍一下MODIS的批量下载. 关于MODIS账号的注册和MODIS常用的下载源,可以看我上一篇文章<[MO ...

最新文章

  1. 我,某大学副教授+副处级,工资7300/月,老婆天天骂我窝囊废……
  2. java中abstract关键字
  3. Meditation Guide
  4. linux打包运行python文件_Linux下安装pyinstaller用于将py文件打包生成一个可执行文件...
  5. 循环: 打印1~10
  6. 折半查找判定树及平均查找长度
  7. python union函数_如何掌握Python union()方法及怎么用?
  8. Android笔记 pacth图形
  9. 【NOI2004】【洛谷P1486】郁闷的出纳员(Splay写法)
  10. redis常用命令getex_redis常用命令大全
  11. 【转】深入理解JVM—JVM内存模型
  12. jquery字符串转json
  13. linux的显示器设置
  14. 终于等到离职这一天了--献给准备、犹豫离职中的朋友们!
  15. 飞机大战python_飞机大战python
  16. 武汉php的工资是多少钱,在武汉工作,月薪5000元属于什么水平?
  17. 花海吉他谱-无限延音编配
  18. android弹出自定义layout菜单,Android:PopWindow — 对Android的底部弹窗、顶部弹窗菜单及自定义界面的使用封装...
  19. 多线程应用_左圆右方
  20. solr增量 dih deltaimport 入门

热门文章

  1. 怎么解决计算机键盘驱动,键盘驱动不兼容,详细教您键盘驱动不兼容怎么解决...
  2. 基于OpenCore0.5.4/5/6,初级配置视频与文字
  3. win7无线网络突然不能用了(或打开无线按钮灰色)
  4. 实战 Firefox 扩展开发
  5. csrss32.exe
  6. 《我的成功可以复制》读后感
  7. vue项目中,网页地址栏添加小图标
  8. 【元胞自动机】基于matlab元胞自动机考虑驾驶行为的自动—求解手动驾驶混合交通流问题【含Matlab源码 2060期】
  9. 源支付源码客户端+云端+监控+协议三网免挂免输入(全套版)
  10. 统计学基础知识之统计思维