# !/usr/bin/env python
# -*-coding:utf-8-*-
# date :2021/8/5 15:02
# author:Sabo
# CCTV官网:https://tv.cctv.com/index.shtmlfrom bs4 import BeautifulSoup as BS
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from os import systemdef getvideoLinks(htmlSource):videoLinksList = []videoTitleList = []mainPage = BS(htmlSource, "html.parser")childPage = mainPage.find("div", attrs={"class":"lcon"}).find_next("ul")aTags = childPage.find_all("a")for aTag in aTags:videoLinksList.append(aTag.get("href"))for aTag in aTags:videoTitleList.append(aTag.get("title"))return videoLinksList, videoTitleListdef switchToNowWindow(driver):window_handles = driver.window_handlesdriver.switch_to.window(window_handles[-1])return driverdef goToMainUrl(dstUrl, videoName):driver = webdriver.Chrome()driver.get(dstUrl)driver.implicitly_wait(3)driver.maximize_window()driver = switchToNowWindow(driver)driver.find_element_by_id("mytxtdafdfasdf").send_keys(videoName, Keys.ENTER)driver = switchToNowWindow(driver)print(driver.current_url)return driver.page_source# 利用os模块调用cmd利用you-get指令下载视频
def download(savePath, videoName, videoUrl):commond = 'you-get -o {0} -O {1} "{2}"'.format(savePath, videoName, videoUrl)print(commond)system(commond)def downloadAll(savePath, videoLinks, videoTitle):for index in range(videoLinks.__len__()):download(savePath=savePath, videoName=videoTitle[index], videoUrl=videoLinks[index], )def formatvideoTitle(videoTitles):for index in range(videoTitles.__len__()):videoTitles[index]=videoTitles[index].replace(" ","-")return videoTitlesdef main(videoName, savePath):savePath += videoName# 央视官网首页mainUrl = "https://tv.cctv.com/index.shtml"page_source = goToMainUrl(dstUrl=mainUrl, videoName=videoName)# 网页处理数据videoLinksList, videoTitleList = getvideoLinks(htmlSource=page_source)videoTitleList = formatvideoTitle(videoTitles=videoTitleList)downloadAll(savePath=savePath, videoLinks=videoLinksList, videoTitle=videoTitleList)if __name__ == '__main__':# # 初始变量# videoName = "舌尖上的中国"videoName = str(input("请输入你想下载的视频名字:"))savePath = str(input("请输入你要保存的盘符名字(例如D:或者F:等)"))# savePath = r"F:/"savePath+="/"print(savePath)main(videoName=videoName, savePath=savePath)

Python 爬取CCTV视频相关推荐

  1. Python爬取CCTV视频

    文章目录 前言 一.需求 二.分析 微视频 长视频 三.处理 四.运行效果 前言 为了更好的掌握数据处理的能力,因而开启Python网络爬虫系列小项目文章. 小项目小需求驱动,每篇文章会使用两种以上的 ...

  2. python爬取bilibili数据_如何使用Python爬取bilibili视频(详细教程)

    Python爬取bilibili视频 摘要 为了解决PC端的bilibili无法下载视频的问题,使用python语言可以实现一个能够爬取bilibili某个视频资源(不包括会员视频)的程序.采用整个视 ...

  3. python如何爬取网页视频_快就完事了!10分钟用python爬取网站视频和图片

    原标题:快就完事了!10分钟用python爬取网站视频和图片 话不多说,直接开讲!教你如何用Python爬虫爬取各大网站视频和图片. 638855753 网站分析: 我们点视频按钮,可以看到的链接是: ...

  4. 用Python爬取Bilibili视频,难吗?

    作者:Mike_Shine 来源:https://urlify.cn/2qyMBb 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. 很 ...

  5. python爬取YB视频评论

    python爬取评论 一.背景 二.整体思路 三.代码讲解 3.1 代码结构 3.2 核心代码 3.2.1 爬虫核心代码 3.2.2 界面核心代码 3.2.3 json转excel 四.爬取结果 五. ...

  6. python爬取小视频-今天给大家带来了python抓取b站小视频的小爬虫

    首先打开小视频 的网页 url = http://vc.bilibili.com/p/eden/rank#/?tab=%E5%85%A8%E9%83%A8 然后我们来分析下url: 点击排行榜,默认全 ...

  7. python爬取快手视频 多线程下载

    直接开始! 环境: python 2.7 + win10 工具:fiddler postman 安卓模拟器 首先,打开fiddler,fiddler作为http/https 抓包神器,这里就不多介绍. ...

  8. python爬取短视频,Python爬虫一键下载yy全站短视频详细步骤(附源码)

    基本开发环境 Python 3.6 Pycharm 相关模块的使用 importosimport requests 安装Python并添加到环境变量,pip安装需要的相关模块即可. 一.确定目标需求 ...

  9. Python爬取bilibili视频(期末设计)

    摘要 为了解决PC端的bilibili无法下载视频的问题,使用python语言可以实现一个能够爬取bilibili某个视频资源(不包括会员视频)的程序.采用整个视频下载与分片拼接视频两种思路实现程序, ...

最新文章

  1. HALCON基于灰度值的模板匹配
  2. 计算机/ARM 系统
  3. vim 环境变量 encoding、fileencoding、fileencodings 的作用
  4. 平板电脑离寿终正寝还有多远?
  5. 获取字段_数据库中敏感字段的标记、标示
  6. 八大看点丨第十届数据技术嘉年华精彩抢先速览
  7. 智慧零售erp通用版管理系统+门店管理+商品管理+厂商管理+财务管理+销售管理+仓储管理+Axure高保真交互ERP通用版零售行业web端简易版管理系统
  8. ispostback的坑
  9. Origin自动寻峰
  10. PyVistaVTK Data Model
  11. 聚集索引与非聚集索引的区别
  12. 查询rssi指令_h3c无线控制器常用命令(wx)
  13. criteria使用详解
  14. elasticsearch搭建遇到的问题整理合集1
  15. Ideas for Snap to grid
  16. 看到几篇关于于敏构型的文章,推荐一下,真的很详细
  17. 企企通携手「帝迈生物」打造的数字化采购平台成功上线,客户发来暖心感谢信
  18. 《小窗幽记》卷五 集素
  19. 三子棋/九宫格代码实现
  20. PICE(6):集群环境里多异类端点gRPC Streaming - Heterogeneous multi-endpoints gRPC streaming

热门文章

  1. 使用css的box-shadow画一个月亮形状的图形
  2. python时间time格式化、时间戳
  3. linux关闭内核命令,CentOS 7关闭/开启SELinux内核简单方法
  4. 特殊竞赛类的概率计算
  5. 服务器和备份系统软件,云服务器备份系统软件
  6. Windows系统下的Selenium安装教程
  7. 日本生活的一些小经验
  8. 在线教育赛道弃旧迎新,头部玩家们如何“不破不立”?
  9. 物理学复试面试专业问题最全整理(魔鬼训练)
  10. 主键索引和唯一索引的区别与创建规则