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脚本实现虾米网签到功能
Apr 12 Python
玩转python selenium鼠标键盘操作(ActionChains)
Apr 12 Python
使用Python对Excel进行读写操作
Mar 30 Python
利用Python操作消息队列RabbitMQ的方法教程
Jul 19 Python
Python中文件的读取和写入操作
Apr 27 Python
Python numpy实现二维数组和一维数组拼接的方法
Jun 05 Python
Pycharm创建项目时如何自动添加头部信息
Nov 14 Python
Python箱型图处理离群点的例子
Dec 09 Python
Python 输出详细的异常信息(traceback)方式
Apr 08 Python
python对execl 处理操作代码
Jun 22 Python
python怎么调用自己的函数
Jul 01 Python
python单元测试框架pytest的使用示例
Oct 07 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模板技术原理【一】
2008/01/10 PHP
php实现自动获取生成文章主题关键词功能的深入分析
2013/06/03 PHP
Eclipse的PHP插件PHPEclipse安装和使用
2014/07/20 PHP
Symfony模板的快捷变量用法实例
2016/03/17 PHP
yii2实现 &quot;上一篇,下一篇&quot; 功能的代码实例
2017/02/04 PHP
PHP利用递归函数实现无限级分类的方法
2019/03/22 PHP
Javascript实现DIV滚动自动滚动到底部的代码
2012/03/01 Javascript
JQuery操作tr和td内容的方法实例
2013/03/06 Javascript
用js通过url传参把数据从一个页面传到另一个页面
2014/09/01 Javascript
分享两段简单的JS代码防止SQL注入
2016/04/12 Javascript
AngularJS指令详解及示例代码
2016/08/16 Javascript
js HTML5多图片上传及预览实例解析(不含前端的文件分割)
2016/08/26 Javascript
AngularJS实现按钮提示与点击变色效果
2016/09/07 Javascript
jQuery查找节点并获取节点属性的方法
2016/09/09 Javascript
JavaScript 计算笛卡尔积实例详解
2016/12/02 Javascript
JavaScript 栈的详解及实例代码
2017/01/22 Javascript
jQuery实现的页面弹幕效果【测试可用】
2018/08/17 jQuery
vue中rem的配置的方法示例
2018/08/30 Javascript
VUE脚手架的下载和配置步骤详解
2019/04/01 Javascript
JS中this的4种绑定规则详解
2020/02/04 Javascript
一篇不错的Python入门教程
2007/02/08 Python
python实现批量获取指定文件夹下的所有文件的厂商信息
2014/09/28 Python
详解python的ORM中Pony用法
2018/02/09 Python
pycharm 主题theme设置调整仿sublime的方法
2018/05/23 Python
python 实现返回一个列表中出现次数最多的元素方法
2019/06/11 Python
python运用sklearn实现KNN分类算法
2019/10/16 Python
python的sys.path模块路径添加方式
2020/03/09 Python
Python使用Pyqt5实现简易浏览器(最新版本测试过)
2020/04/27 Python
如何使用Cython对python代码进行加密
2020/07/08 Python
日本航空官方网站:JAL
2019/06/19 全球购物
夜不归宿检讨书
2014/02/25 职场文书
加多宝凉茶广告词
2014/03/18 职场文书
中学生秋季运动会广播稿
2014/09/21 职场文书
毕业生学校组织意见
2015/06/04 职场文书
暖春观后感
2015/06/08 职场文书
浅谈Python从全局与局部变量到装饰器的相关知识
2021/06/21 Python