python爬虫爬取某网站视频的示例代码


Posted in Python onFebruary 20, 2021

把获取到的下载视频的url存放在数组中(也可写入文件中),通过调用迅雷接口,进行自动下载。(请先下载迅雷,并在其设置中心的下载管理中设置为一键下载)

实现代码如下:

from bs4 import BeautifulSoup
import requests
import os,re,time
import urllib3
from win32com.client import Dispatch
class DownloadVideo:
  def __init__(self):
    self.r = requests.session()
    self.url=self.get_url()
    self.download_urla=[]
    self.download_urlb=[]
    self.url_set=["%s/shipin/list-短视频.html"%self.url]
  #获取最新网址
  def get_url(self):
    urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
    a=self.r.get('https://www.k58.com',verify=False)
    b=a.url
    return b
  #几页内容的网址
  def url_set1(self,n):
    if n==2:
      url="%s/shipin/list-短视频-2.html"%self.url
      self.url_set.append(url)
    elif n>=3:
      m=n+1
      for i in range(2,m):
        url="%s/shipin/list-短视频-%d.html"%(self.url,i)
        self.url_set.append(url)
    else:
      pass
  #分别加载每一个页内容的网址
  def download_url1(self):
    for j in self.url_set:
      urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
      r=self.r.get(j,verify=False)
      sp1=r.content
      soup = BeautifulSoup(sp1, "html.parser")
      sp2 = soup.find_all(class_="shown")
      for i in sp2:
        url1=re.findall('<a href="(.*?)" rel="external nofollow" ',str(i))
        u=self.url+url1[0]
        self.download_urla.append(u)
  #分别获取各个视频的下载链接
  def download_url2(self):
    for i in self.download_urla:
      urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
      r=self.r.get(i,verify=False)
      sp1=r.content
      soup = BeautifulSoup(sp1, "html.parser")
      sp2 = soup.find_all(class_="form-control input-sm copy_btn app_disable")
      for j in sp2:
        url2=j["data-clipboard-text"]
        self.download_urlb.append(url2)
        #将链接写入txt中
        # self.write_txt(url2)
  #迅雷下载
  def thunder_download(self):
    try:
      thunder = Dispatch("ThunderAgent.Agent64.1")
      for i in self.download_urlb:
        thunder.AddTask(i)
        thunder.CommitTasks()
        time.sleep(2)
    except:
      print("请下载迅雷,并在其设置中心的下载管理中设置为一键下载")

  def mkdir(self,path):
    folder = os.path.exists(path)
    if not folder:
      os.makedirs(path)
    else:
      pass
  def write_txt(self,c):
    self.mkdir(r"D:\AAAAA")
    file_name=time.strftime('%Y%m%d_%H%M%S.txt')
    with open(r"D:\AAAAA\%s"%file_name,'a') as f:
      f.write(c+"\n")

if __name__ == '__main__':
  d=DownloadVideo()
  #数字表示几页的内容
  d.url_set1(5)
  d.download_url1()
  d.download_url2()
  d.thunder_download()

到此这篇关于python爬虫爬取某网站视频的示例代码的文章就介绍到这了,更多相关python爬虫爬取网站视频内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python写的Discuz7.2版faq.php注入漏洞工具
Aug 06 Python
解决Python字典写入文件出行首行有空格的问题
Sep 27 Python
对python多线程中Lock()与RLock()锁详解
Jan 11 Python
python实现定时压缩指定文件夹发送邮件
Dec 22 Python
python日期相关操作实例小结
Jun 24 Python
pytorch 批次遍历数据集打印数据的例子
Dec 30 Python
使用python检查yaml配置文件是否符合要求
Apr 09 Python
让Django的BooleanField支持字符串形式的输入方式
May 20 Python
如何基于matlab相机标定导出xml文件
Nov 02 Python
Numpy中的数组搜索中np.where方法详细介绍
Jan 08 Python
Python实现给PDF添加水印的方法
Jan 25 Python
Python机器学习之KNN近邻算法
May 14 Python
python爬虫线程池案例详解(梨视频短视频爬取)
Feb 20 #Python
python爬虫scrapy框架的梨视频案例解析
Feb 20 #Python
Keras保存模型并载入模型继续训练的实现
Feb 20 #Python
TensorFlow2.0使用keras训练模型的实现
Feb 20 #Python
tensorflow2.0教程之Keras快速入门
Feb 20 #Python
在Pycharm中安装Pandas库方法(简单易懂)
Feb 20 #Python
Python3爬虫RedisDump的安装步骤
Feb 20 #Python
You might like
浅谈PHP中关于foreach使用引用变量的坑
2016/11/14 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
JavaScript 给汉字排序实例代码
2008/06/28 Javascript
RGB颜色值转HTML十六进制(HEX)代码的JS函数
2009/04/25 Javascript
犀利的js 函数集合
2009/06/11 Javascript
Javascript 阻止javascript事件冒泡,获取控件ID值
2009/06/27 Javascript
node+express+ejs制作简单页面上手指南
2014/11/26 Javascript
JS时间特效最常用的三款
2015/08/19 Javascript
分类解析jQuery选择器
2016/11/23 Javascript
详解支持Angular 2的表格控件
2017/01/19 Javascript
基于JavaScript实现淘宝商品广告效果
2017/08/10 Javascript
VsCode插件整理(小结)
2017/09/14 Javascript
JS+php后台实现文件上传功能详解
2019/03/02 Javascript
vue 清空input标签 中file的值操作
2020/07/21 Javascript
[49:27]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第一场
2018/04/05 DOTA
python中Pycharm 输出中文或打印中文乱码现象的解决办法
2017/06/16 Python
Python爬虫实现全国失信被执行人名单查询功能示例
2018/05/03 Python
python实现抖音视频批量下载
2018/06/20 Python
selenium处理元素定位点击无效问题
2019/06/12 Python
python 函数中的内置函数及用法详解
2019/07/02 Python
判断Threading.start新线程是否执行完毕的实例
2020/05/02 Python
使用HTML5的Notification API制作web通知的教程
2015/05/08 HTML / CSS
美国名牌太阳镜折扣网站:Eyedictive
2017/05/15 全球购物
有趣的流行文化T恤、马克杯、手机壳和更多:Look Human
2019/01/07 全球购物
在家更换处方镜片:Lensabl
2019/05/01 全球购物
全球高级音频和视频专家:HiDef Lifestyle
2019/08/02 全球购物
解释一下Windows的消息机制
2014/01/30 面试题
存储过程的优点有哪些
2012/09/27 面试题
播音主持女孩的自我评价分享
2013/11/20 职场文书
竞赛口号大全
2014/06/16 职场文书
挂职学习心得体会
2014/09/09 职场文书
母亲节寄语大全
2015/02/27 职场文书
实习推荐信格式模板
2015/03/27 职场文书
2016教师节问候语
2015/11/10 职场文书
受欢迎的自荐信,就这么写!
2019/04/19 职场文书
入伍志愿书怎么写?
2019/07/19 职场文书