大家好,我是拉斯,今天分享一个爬取某音视频的一个小案例,大家一起学习

目录

  • 前言
  • 基本环境配置
  • 爬取目标视频
    • 获取视频链接
      • 1.查看网页源代码
      • 2.抓包工具捕捉
    • 下载视频(以mp4格式进行保存)
    • 获取其他信息并打印(作者名,作品名,获赞数......)
      • 示例(获取作者名)
      • 代码
      • 成果
      • 完结啦

前言

前面已经发布了爬取4k高清图片的示例,大家可以去参考学习;本次使用selenium和request技术,获取所想爬取的数据。
原视频 作者名 作品名 获赞数 评论数 收藏数 转发数

基本环境配置

  • 版本:Python3
  • 系统:Windows
  • 相关模块:selenium,time,requests
  • 开发工具:Pycharm
  • 爬取目标视频

    获取视频链接

    1.查看网页源代码

    一如既往搜索video标签,发现没有;再搜索video,发现也没有。这时候换思路,用开发者工具.

    2.抓包工具捕捉

    注:对不起大家,下面这张图三个链接都是可以到原视频的,因此都可以作为第一段代码的url来使用!!!

    下载视频(以mp4格式进行保存)

    既然有了视频的链接,就可以直接发起请求进行视频的下载,以mp4格式进行持久化存储

    代码:(requests技术进行视频下载)

    import requestsurl="url1" #特别注意:此处url1值为上面图片三个链接中任意一个,会变化所以不写死,大家得到后自行复制到此处
    headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36 Edg/109.0.1518.70"
    }
    resp=requests.get(url=url,headers=headers)
    with open("dy1.mp4","wb") as fp:fp.write(resp.content)
    print("下载完成")
    

    成果:

    获取其他信息并打印(作者名,作品名,获赞数…)

    使用selenium技术进行元素定位,复制xpath,即可使用find_element_by_xpath方法进行内容获取,后面每一个都是这样获取,下面以作者名为例子

    示例(获取作者名)

    抓包工具进行作者名定位,最后右击元素复制对应xpath.

    复制xpath:

    代码

    from selenium import webdriver
    import time
    from selenium.webdriver.common.keys import Keys
    url="url2" #url2值在评论区获得,因为写上审核不给过
    driver=webdriver.Chrome()
    driver.get(url)
    time.sleep(2)
    writer_name=driver.find_element_by_xpath('//*[@id="video-info-wrap"]/div[1]/div[1]/div[1]/span/span/span/span/span/span/span').text #作者名
    work_name=driver.find_element_by_xpath('//*[@id="video-info-wrap"]/div[1]/div[2]/div/div/span/span/span[1]/span/span/span').text #作品名
    hz_count=driver.find_element_by_xpath('//*[@id="douyin-right-container"]/div[3]/div[4]/div[2]/div[1]/div/div/div[1]/div[2]/div[2]/div/div[2]').text #获赞数量
    comment_count=driver.find_element_by_xpath('//*[@id="douyin-right-container"]/div[3]/div[4]/div[2]/div[1]/div/div/div[1]/div[2]/div[3]/div/div[2]').text #评论数量
    save_count=driver.find_element_by_xpath('//*[@id="douyin-right-container"]/div[3]/div[4]/div[2]/div[1]/div/div/div[1]/div[2]/div[4]/div/div[2]').text #收藏数量
    send_count=driver.find_element_by_xpath('//*[@id="douyin-right-container"]/div[3]/div[4]/div[2]/div[1]/div/div/div[1]/div[2]/div[5]/div[1]/div/div[2]').text #转发数量print("作者名:",writer_name)
    print("作品名:",work_name)
    print("点赞数量:",hz_count)
    print("评论数量:",comment_count)
    print("收藏数量:",save_count)
    print("转发数量:",send_count)
    

    成果

    完结啦

Python爬虫教你爬取视频信息相关推荐

  1. Python爬虫教你爬取视频内容

    前面介绍了基本的数据爬取,图片爬取的相关案例前面文章也有涉及,关于有些案例网站不能登录的问题,可以再找些别的网站,因为道理既然明白了,其实什么网站都一样,它有反爬机制,自然有应对它的办法,下面案例我也 ...

  2. Python爬虫:Xpath爬取网页信息(附代码)

    Python爬虫:Xpath爬取网页信息(附代码) 上一次分享了使用Python简单爬取网页信息的方法.但是仅仅对于单一网页的信息爬取一般无法满足我们的数据需求.对于一般的数据需求,我们通常需要从一个 ...

  3. 一个简单python爬虫的实现——爬取电影信息

    最近在学习网络爬虫,完成了一个比较简单的python网络爬虫.首先为什么要用爬虫爬取信息呢,当然是因为要比人去收集更高效. 网络爬虫,可以理解为自动帮你在网络上收集数据的机器人. 网络爬虫简单可以大致 ...

  4. python爬虫实战笔记——爬取图书信息(利用selenium库+chromedriver.exe插件)

    准备: 1.插件chromedriver.exe 2.已经安装好谷歌浏览器Chrome 编写代码 from bs4 import BeautifulSoup from selenium import ...

  5. Python爬虫——片库网 爬取 视频

    片库url:http://tv.cnco.me/ 一.进入网站 二.输入关键字跳转界面 格式: url = "http://tv.cnco.me/" search_keyword ...

  6. Python爬虫入门(爬取豆瓣电影信息小结)

    Python爬虫入门(爬取豆瓣电影信息小结) 1.爬虫概念 网络爬虫,是一种按照一定规则,自动抓取互联网信息的程序或脚本.爬虫的本质是模拟浏览器打开网页,获取网页中我们想要的那部分数据. 2.基本流程 ...

  7. [Python 爬虫] 使用 Scrapy 爬取新浪微博用户信息(四) —— 应对反爬技术(选取 User-Agent、添加 IP代理池以及Cookies池 )

    上一篇:[Python 爬虫] 使用 Scrapy 爬取新浪微博用户信息(三) -- 数据的持久化--使用MongoDB存储爬取的数据 最近项目有些忙,很多需求紧急上线,所以一直没能完善< 使用 ...

  8. [Python 爬虫] 使用 Scrapy 爬取新浪微博用户信息(二) —— 编写一个基本的 Spider 爬取微博用户信息

    上一篇:[Python 爬虫] 使用 Scrapy 爬取新浪微博用户信息(一) -- 新建爬虫项目 在上一篇我们新建了一个 sina_scrapy 的项目,这一节我们开始正式编写爬虫的代码. 选择目标 ...

  9. [Python 爬虫] 使用 Scrapy 爬取新浪微博用户信息(三) —— 数据的持久化——使用MongoDB存储爬取的数据

    上一篇:[Python 爬虫] 使用 Scrapy 爬取新浪微博用户信息(二) -- 编写一个基本的 Spider 爬取微博用户信息 在上一篇博客中,我们已经新建了一个爬虫应用,并简单实现了爬取一位微 ...

最新文章

  1. 深度学习实现缺陷检测
  2. smo算法matlab实现
  3. ABAP的HTTP_GET和Linux的curl
  4. CentOS6.9中搭建FTP服务器
  5. 图说开源许可协议:GPL、BSD、MIT、Mozilla、Apache和LGPL的区别
  6. openstack--1--基础环境搭建
  7. ActiveMQ部署模式
  8. mysql 核对_核对数据库表记录的shell脚本
  9. 得到时间字符串|程序当前的目录
  10. 学习hibernate(五) -- hibernate映射关系
  11. 符合功能安全要求的动态测试工具-TESSY
  12. DDR3的容量计算方法
  13. 1024:程序员,你的身体还好吗?
  14. 服务器XP系统打印机共享设置,小编调解xp系统打印机共享设置和使用的详细教程...
  15. 什么是智能建筑,智能建筑系统主要有哪几部分组成?
  16. python构造自定义数据包_Python发送网络封包,自定义封包结构与内容并发出去
  17. Koo叔说Shader—UV旋转
  18. Win11电脑速度慢、延迟高怎么办?
  19. 暴跌中重温周金涛:2018年之后大家能明白我说的话的意义
  20. 三阶段面试题——vue

热门文章

  1. mysql导入access2016_php 导入mysql数据到access方法
  2. 生信软件4 - 拷贝数变异CNV分析软件 WisecondorX
  3. 使用java网络编程模拟简单网络即时通信
  4. thinkpad X61风扇控制
  5. 视频分类Video-Swin-Transformer
  6. poj1094 Sorting It All Out(拓扑排序+传递闭包)
  7. ABAQUS 6.14——下载及安装
  8. firefly的RK3399AIOC开发板+海康工业相机抓图预览
  9. Snip for Mac(桌面截图工具)安装
  10. 【Android】如何实现App的快捷方式的创建、添加与管理呢?