Python 爬取CCTV视频
# !/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视频相关推荐
- Python爬取CCTV视频
文章目录 前言 一.需求 二.分析 微视频 长视频 三.处理 四.运行效果 前言 为了更好的掌握数据处理的能力,因而开启Python网络爬虫系列小项目文章. 小项目小需求驱动,每篇文章会使用两种以上的 ...
- python爬取bilibili数据_如何使用Python爬取bilibili视频(详细教程)
Python爬取bilibili视频 摘要 为了解决PC端的bilibili无法下载视频的问题,使用python语言可以实现一个能够爬取bilibili某个视频资源(不包括会员视频)的程序.采用整个视 ...
- python如何爬取网页视频_快就完事了!10分钟用python爬取网站视频和图片
原标题:快就完事了!10分钟用python爬取网站视频和图片 话不多说,直接开讲!教你如何用Python爬虫爬取各大网站视频和图片. 638855753 网站分析: 我们点视频按钮,可以看到的链接是: ...
- 用Python爬取Bilibili视频,难吗?
作者:Mike_Shine 来源:https://urlify.cn/2qyMBb 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. 很 ...
- python爬取YB视频评论
python爬取评论 一.背景 二.整体思路 三.代码讲解 3.1 代码结构 3.2 核心代码 3.2.1 爬虫核心代码 3.2.2 界面核心代码 3.2.3 json转excel 四.爬取结果 五. ...
- python爬取小视频-今天给大家带来了python抓取b站小视频的小爬虫
首先打开小视频 的网页 url = http://vc.bilibili.com/p/eden/rank#/?tab=%E5%85%A8%E9%83%A8 然后我们来分析下url: 点击排行榜,默认全 ...
- python爬取快手视频 多线程下载
直接开始! 环境: python 2.7 + win10 工具:fiddler postman 安卓模拟器 首先,打开fiddler,fiddler作为http/https 抓包神器,这里就不多介绍. ...
- python爬取短视频,Python爬虫一键下载yy全站短视频详细步骤(附源码)
基本开发环境 Python 3.6 Pycharm 相关模块的使用 importosimport requests 安装Python并添加到环境变量,pip安装需要的相关模块即可. 一.确定目标需求 ...
- Python爬取bilibili视频(期末设计)
摘要 为了解决PC端的bilibili无法下载视频的问题,使用python语言可以实现一个能够爬取bilibili某个视频资源(不包括会员视频)的程序.采用整个视频下载与分片拼接视频两种思路实现程序, ...
最新文章
- HALCON基于灰度值的模板匹配
- 计算机/ARM 系统
- vim 环境变量 encoding、fileencoding、fileencodings 的作用
- 平板电脑离寿终正寝还有多远?
- 获取字段_数据库中敏感字段的标记、标示
- 八大看点丨第十届数据技术嘉年华精彩抢先速览
- 智慧零售erp通用版管理系统+门店管理+商品管理+厂商管理+财务管理+销售管理+仓储管理+Axure高保真交互ERP通用版零售行业web端简易版管理系统
- ispostback的坑
- Origin自动寻峰
- PyVistaVTK Data Model
- 聚集索引与非聚集索引的区别
- 查询rssi指令_h3c无线控制器常用命令(wx)
- criteria使用详解
- elasticsearch搭建遇到的问题整理合集1
- Ideas for Snap to grid
- 看到几篇关于于敏构型的文章,推荐一下,真的很详细
- 企企通携手「帝迈生物」打造的数字化采购平台成功上线,客户发来暖心感谢信
- 《小窗幽记》卷五 集素
- 三子棋/九宫格代码实现
- PICE(6):集群环境里多异类端点gRPC Streaming - Heterogeneous multi-endpoints gRPC streaming