引言

最近小编迷上了街舞,于是小编想试试自己的python爬虫水平,小编就去一个街舞视频网站批量下载了好多
街舞大神的跳舞视频,于是就有了今天的案例

目标网站

Vhiphop街舞视频

目标网址

https://www.vhiphop.com/

开发环境

1、window11
2、python3.7
3、PyCharm Community Edition 2021.2.1
4、双核浏览器
5、浏览器自带开发者工具

相关技术

1、selenium

技术介绍

1、简介Selenium是一个开源的WEB自动化测试工具,它可以实现模用户与各种主流拟浏览器交互,例如在搜索框输入关
键字、点击、滚动滚动条等等一系列操作,selenium与python网络爬虫有着千丝万缕的联系,随着互联
网技术高速发展,各种网站由以前的静态网站向动态网站更新迭代,他们大多使用javascript对网页进行
渲染,是的普通爬虫获取的服务器响应数据和用户实际看到的不一致,部分数据使用ajax技术进行数据传
输可以进行抓包,绝大部分数据通过javascript计算得到,在分析ajax数据包的时候很大可能遇到参数
加密,这直接加大了爬虫的开发难度,但是使用selenium就可以直接绕过这些获取到数据2、特点selenium是模拟浏览器的各种动作,所以它不仅会加载出你要爬取的数据,你不想要爬取的数据它都会统
统给你加载出来,例如:网页上的图片、JS代码、CSS代码,这样一来它占用的网络资源就会更多,那么速
度自然就惨不忍睹啦~~~

前置知识

python-pip安装国内源第三方库1、国内镜像源清华:https://pypi.tuna.tsinghua.edu.cn/simple阿里云:https://mirrors.aliyun.com/pypi/simple/中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/华中理工大学:http://pypi.hustunique.com/山东理工大学:http://pypi.sdutlinux.org/ 经验证,阿里的速度最快,使用命令格式,列如:  pip install -i 国内镜像源网址 python第三方库名称==第三方模块版本号2、安装软件包pip install 第三方库名称3、更新软件包pip install -upgrade 第三方软件包名称  (upgrade可以简写为U)4、卸载第三方库pip uninstall 第三方库名称5、查看已经安装的第三方库pip list6、检查哪些包需要更新pip list --outdated7、安装自定版本的第三方库pip install 第三方库名称==版本号8、升级pip包pip install --upgrade pip --user
1、安装selenium第三方模块打开pycharm,点击Terminal进入其弹出的界面

使用pip命令安装selenium

2、各主流浏览器驱动下载在这,教大家如何找到这些主流浏览器驱动的下载网址打开pycharm,点击Python Packages进入其弹出的小窗口,在搜索框搜索已经安装好的selenium模块,双击selenium,进入其详细页面,将滚动条慢慢往下拉直到看见这几个大字Drivers,上图

再也不用担心网址找不到啦~~~

下面正式进入本案例,请大家认真观看视频讲解,一定要耐心看完,不然学不会概不负责哟~~~

python selenium爬虫-Vhiphop街舞视频-批量下载街舞视频思路分析-无代码

查看网页源码发现没有找到我们所要的数据,且发现了javascript代码,所以我们使用selenium模块开
发python爬虫

数据解析分析

我们发现每一页有40个视频,本案例我们使用re做数据解析</span></p></div></a> <!----> <!----> <!----></li><li data-v-22bbe3e3="" class="video-lists"><a data-v-22bbe3e3="" href="/videos/371917" target="_blank" title="BC ONE ALL STARS VS RAD// BATTLE FOR 3RD PLACE// PHILLY OPEN 2022"</span></p></div></a> <!----> <!----> <!----></li><li data-v-22bbe3e3="" class="video-lists"><a data-v-22bbe3e3="" href="/videos/371915" target="_blank" title="RED BULL BC ONE ALL STARS VS LACK OF CROWNS / UNDISPUTED CREW BATTLE IBE 2022" </span></p></div></a> <!----> <!----> <!----></li><li data-v-22bbe3e3="" class="video-lists"><a data-v-22bbe3e3="" href="/videos/371912" target="_blank" title="Red Bull BC One Allstars vs Formless Corp [CREW FINAL] / Undisputed Masters x The Notorious IBE 2022"</span></p></div></a> <!----> <!----> <!----></li><li data-v-22bbe3e3="" class="video-lists"><a data-v-22bbe3e3="" href="/videos/371903" target="_blank" title="Crashfest ft. Sunni, Lee, Kid Colombia, Alvin, Cri6, Kid Mario, Tsukki &amp; more | IBE 2022"我调试后写出的正则字符串如下:str_ = 'class="video-lists"><a data-v-22bbe3e3="" href="(.*?)" target="_blank" title="(.*?)"',如果你的正则只能解析出39数据,不要怀疑,那肯定是正则字符串有问题使用XPATH获取不同舞种的网页最大页数,小编是直接使用谷歌浏览器插件chropath得到xpath代码的,"编舞": 1,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[8]"Popping": 2,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[8]"Hip hop": 3,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[8]"Jazz": 4,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[8]"Locking": 5,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[8]"Waacking": 6,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[8]"Breaking": 7,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[8]"House": 8,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[4]"Contemporary": 9,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[5]"Reggae": 10# 没有"Freestyle": 11,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[8]"Krumping": 12,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[3]"其他": 13,# /html[1]/body[1]/div[1]/section[1]/div[3]/ul[1]/li[7]

有需要的可以看我另一篇博客谷歌浏览器插件:selenium元素定位器chropath

翻页分析

我们要获取最大页数的xpath代码,直接用浏览器插件chropath

可以发现在翻页过程中最大页数的xpath发生了变化,其他的由小伙伴们自己演示哟,相信大家

源代码

总结

大家学习一定不能偷懒,一定要自己独立写代码,思路才是最重要的,写代码不是照着敲,而是跟着思路走

python selenium爬虫入门案例day04:Vhiphop街舞视频相关推荐

  1. Python网络爬虫入门案例

    一.什么是网络爬虫? 网络爬虫又称网络蜘蛛.网络蚂蚁.网络机器人等,本质上是一段程序或脚本,可以自动化浏览网络中的信息,浏览信息时程序会按照一定的规则去浏览,这些规则我们称之为网络爬虫算法. 作用: ...

  2. Python Selenium爬虫实战应用

    本节讲解 Python Selenium 爬虫实战案例,通过对实战案例的讲解让您进一步认识 Selenium 框架. 实战案例目标:抓取京东商城(https://www.jd.com/)商品名称.商品 ...

  3. python爬虫入门案例day11:街舞

    引言 今天小编来带领大家批量下载街舞视频 爬虫应用 1.数据分析:2.商业领域: 开发爬虫的流程 1. 准备工作2. 获取数据3. 解析内容4. 保存数据 requests介绍 1.requests库 ...

  4. python爬虫入门案例day01:拼多多

    python爬虫入门案例day01:拼多多 目标网站 拼多多 目标网址 https://www.pinduoduo.com/ 开发环境 1.window11 2.python3.7 3.PyCharm ...

  5. python与人工智能编程-总算明白python人工智能编程入门案例

    Python是非常简洁的一种脚本语言,写同样的程序,代码量仅为java的三分一,除了性能没有Java强之外,它的优点还是相当多的.以下是小编为你整理的python人工智能编程入门案例 下载Active ...

  6. python爬虫挖掘平台搭建_一篇非常棒的安装Python及爬虫入门博文!

    原标题:一篇非常棒的安装Python及爬虫入门博文! 一. 大数据及数据挖掘基础(私信小编007即可获取大量Python学习资料!) 第一部分主要简单介绍三个问题: 1.什么是大数据? 2.什么是数据 ...

  7. Python Selenium 基础入门

      本内容主要介绍 Python Selenium 的基础使用方法. 1 Python Selenium 简介和环境配置 1.1 Selenium 简介   Selenium 是一个 Web 的自动化 ...

  8. Python网络爬虫实战案例之:7000本电子书下载(2)

    一.前言 本文是<Python开发实战案例之网络爬虫>的第二部分:7000本电子书下载网络爬虫开发环境安装部署.配套视频课程详见网易云课堂 二.章节目录 (1)Python开发环境依赖 ( ...

  9. python selenium爬虫

    python selenium爬虫 1 前言 博主是一名经管研究生,以自身经历为例.如今大学生写论文大部分都需要数据支撑来论证研究结果,数据除了从数据库直接下载外,有些是需要通过网络爬虫来获得.网络爬 ...

  10. python selenium爬虫实例_python使用selenium爬虫知乎的方法示例

    说起爬虫一般想到的情况是,使用 python 中都通过 requests 库获取网页内容,然后通过 beautifulSoup 进行筛选文档中的标签和内容.但是这样有个问题就是,容易被反扒机制所拦住. ...

最新文章

  1. 2021年上海市高考成绩查询,2021上海市地区高考成绩排名查询,上海市高考各高中成绩喜报榜单...
  2. centos7离线安装metasploit
  3. 每日一皮:开会不关微信的尴尬(2)
  4. Uipath 学习栏目基础教学:2Uipath变量介绍
  5. 终于学会上传图片了\( ̄︶ ̄*\))
  6. E: Sub-process /usr/bin/dpkg returned an error code (1)解决办法
  7. java代理机制简单实现
  8. 一项一项教你测等保2.0——Windows入侵防范
  9. [转载] Python:numpy中array的用处
  10. Spyder设置字体
  11. Vue PC端分辨率自适应
  12. 如何成为一个具有批判性思维的人?
  13. Android实战——一步一步实现流动的炫彩边框
  14. java 8 stream 的学习
  15. Verilog语言注意事项
  16. GO项目打包部署操作
  17. 累死你的不是工作方式
  18. 【网易笔试】小易最近在数学课上学习到了集合的概念
  19. 视频教程-Java拼多多返利系统-Java
  20. expand linux,整理一下linux系统expand 命令

热门文章

  1. 一文带你吃透黑盒测试跟白盒测试的区别
  2. 是否要允许堵车“加塞”的帕累托最优、纳什均衡分析
  3. 人工客服——图灵机器人教程
  4. 结构体里数组的初始化
  5. Android 深色模式使用失效
  6. macbook/macos输入法乱跳
  7. wps两个表格对比数据(怎样对两个EXCEL表格数据对比,找出相同和不同的数据?)
  8. HC-SR04超声波传感器
  9. 计算机主机hdmi接口是什么意思,hdmi接口是什么 hdmi是什么意思
  10. 利用分析仪测量二极管的伏安特性