爬虫常用模板

        这里记录的是我学习爬虫自己用到的一些东西,方便以后打开直接使用。我会不定期的往里面添加内容。 

爬虫工具库-spidertools.cn

协程

        模板1(通过loop):

async def download()passasync def main():# 创建任务队列tasks = []for..........{     # 使用for循环调用其它异步函数,添加到任务队列中asks.append(asyncio.create_task(download()))}# 打包提交队列await asyncio.gather(*tasks)if __name__ == '__main__':# 创建looploop = asyncio.get_event_loop()# 通过loop执行异步函数loop.run_until_complete(main())

         模板2(通过asyncio):

async def download()passasync def main():# 创建任务队列tasks = []for..........{     # 使用for循环调用其它异步函数,添加到任务队列中asks.append(asyncio.create_task(download()))}# 等待任务结束await asyncio.wait(tasks)if __name__ == '__main__':asyncio.run(main()) 

python运行js模板

import execjs# 打开本地js文件,读取文件内容后通过execjs.compile函数将其转换成js代码暂存在ctx中
with open('baidu.js', 'r', encoding='utf-8') as f:ctx = execjs.compile(f.read())# 使用 ctx.call 函数来调用JS代码中的函数
# 第一个参数:想要调用的js中的函数
# 第二个参数:传入的值
res = ctx.call('hello', lis)

ffmpeg视频合成

        在爬取视频的时候通常是通过m3u8来获取到视频的ts切片,需要把他们全部合成为一个视频切片。

def concat():video = 'output.mp4'    # 视频输出地址ts_locat = './视频切片'      # ts文件路径 # 获取所有的 .ts 文件ts_files = [f for f in os.listdir(ts_locat) if f.endswith('.ts')]ts_files.sort()  # 排序以确保正确的顺序# 将排序好的ts文件目录按行依次写入到一个txt文本中with open('concat_list.txt', 'w', encoding='utf-8') as f:for ts_file in ts_files:f.write(f"file '{ts_locat+ '/' +ts_file}'\n")# 使用 ffmpeg 读取文本中的ts文件目录地址,按顺序拼接所有的 .ts 文件ffmpeg.input('concat_list.txt', format='concat', safe=0).output(video, c='copy').run()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/53125.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt QPushButton 按钮添加数字气泡

使用场景 项目中,在某个按钮的右上角添加数字气泡是一个很常见的功能,可以用新建一个组合类来实现。不过这样比较麻烦,如果加气泡是后面的需求,可能改动的地方较多。 下面介绍2种比较简单,不需要改动按钮响应的方式。…

docker安装prometheus、grafana监控SpringBoot

1. 概述 最新有一个需求, 需要安装一个监控软件,对SpringBoot程序进行监控, 包括机器上cpu, 内存,jvm以及一些日志的统计。 这里需要介绍两款软件: prometheus 和 grafana prometheus: 中文名称, 普罗米…

Excel 将行和列转置的两种方法

方法一: 方法二:使用transpose公式

Unity数据持久化 之 文件操作(增删查改)

本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正​​ 这里需要弄清几个概念: File:提供文件操作的静态方法,是管理的 Windows.File -…

AI驱动测试管理工具会有哪些发展前景呢?

在软件测试领域,人工智能(AI)的出现犹如一场技术革命,改变了传统的测试管理方式。随着AI技术的迅速发展,它将如何进一步提升测试管理的效率与准确性?未来的AI驱动测试管理工具又会带来哪些令人期待的创新呢…

HTTP协议(超文本传输协议)

HTTP请求消息 http请求消息组成: 请求行 :包含请求的方法 操作资源的地址 协议的版本号 http请求方法: GET:从服务器获取资源 POST:添加资源信息 PUT:请求服务器更新资源信息 DELETE:请…

Postman环境变量:简化API测试的利器

引言 在当今快速发展的互联网时代,API(应用程序接口)的重要性不言而喻。无论是内部系统间的通信还是对外服务的提供,API都扮演着至关重要的角色。然而,在API的开发与测试过程中,经常需要处理各种各样的配置…

数学建模强化宝典(10)多元线性回归模型

一、介绍 多元线性回归模型(Multiple Linear Regression Model)是一种用于分析多个自变量(解释变量、预测变量)与单个因变量(响应变量、被预测变量)之间线性关系的统计模型。这种模型假设因变量的变化可以通…

ARM下汇编语言编程

一、ARM汇编语言程序格式 ARM汇编语言是以段(section)为单位来组织源文件的。段是相对独立的、具有特定名称的、不可分割的指令或者数据序列。 段又可以分为代码段和数据段,代码段存放执行代码,数据段存放代码运行时需要用到的数据。一个ARM源程序至少需…

Java学习|Java基础知识

目录 类与对象继承封装多态高级话题实践项目类与对象 定义与创建 类: 定义一组具有相同属性和行为的对象的模板。对象: 根据类模板创建的实体。示例代码 public class Person {String name;int age;public Person(String name, int age) {this.name = name;this.age = age;}…

4.1 数据分析-excel 基本操作

第四节:数据分析-excel 基本操作 课程目标 学会excel 基本操作 课程内容 数据伪造 产生一份招聘数据 import pandas as pd from faker import Faker import random import numpy as np# 创建一个Faker实例,用于生成假数据,指定中文本地…

iOS 中,用户点击一个按钮到响应的全部流程

在 iOS 中,当用户点击一个按钮(或其他 UI 控件)时,会触发一系列复杂的操作流程,从硬件到软件,再到应用层的事件处理。以下是从用户点击一个按钮到应用响应的完整流程: 硬件层:触摸事…

CSS3 文本效果(text-shadow,box-shadow,white-space等)文本溢出隐藏并且显示省略号

一 text-shadow text-shadow 属性是 CSS3 中用于为文本添加阴影效果的工具。它可以增强文本的可读性和视觉吸引力,提供丰富的视觉效果 1 语法 text-shadow: offset-x offset-y blur-radius color;offset-x:阴影相对于文本的水平偏移量。可以是正值&am…

专用于理解游戏场景的开源大模型-VideoGameBunny

大模型在游戏开发领域扮演了重要角色,从AI机器人生成到场景搭建覆盖各个领域。但在游戏场景理解、图像识别、内容描述方面很差。 为了解决这些难题,加拿大阿尔伯塔的研究人员专门开源了一款针对游戏领域的大模型VideoGameBunny(以下简称“VG…

开源模型应用落地-LlamaIndex学习之旅-LLMs-集成vLLM(二)

一、前言 在这个充满创新与挑战的时代,人工智能正以前所未有的速度改变着我们的学习和生活方式。LlamaIndex 作为一款先进的人工智能技术,它以其卓越的性能和创新的功能,为学习者带来前所未有的机遇。我们将带你逐步探索 LlamaIndex 的强大功能,从快速整合海量知识资源,到…

集成电路学习:什么是ISP系统编程

一、ISP:系统编程 ISP(In-System Programming)即系统编程,是一种在系统内部进行的编程方法,主要用于对闪存(FLASH)、EEPROM等非易失性存储器的编程。ISP编程提供了巨大的灵活性,允许…

Input输入框数值与金额格式的互换(拿来即用的完美组件)

一、前言 实际的页面开发中,需要输入金额类型的输入框比较常见,这类输入框根据实际的业务场景都是要进行个性化的组件封装,本文借助自己封装的一个输入框组件 NumberToAmount.vue 来讲述el-input 输入框中数值与金额格式的互换方法,组件包含的功能如下: 1、限制了输入框只…

网络编程 0903作业

作业 1、将TCP的CS模型再敲一遍 tcpserver.c #include <myhead.h> #define SERPORT 1111 #define SERIP "192.168.58.128" #define BACKLOG 40 int main(int argc, const char *argv[]) {int oldfd socket(AF_INET,SOCK_STREAM,0);//1、产生一个原始套接字…

台球助教预约系统小程序源码开发

引言 随着移动互联网的普及和技术的进步&#xff0c;小程序因其轻量级、便捷性以及良好的用户体验成为了连接线上与线下的重要桥梁。对于台球俱乐部而言&#xff0c;一个高效的小程序不仅可以帮助提高服务质量&#xff0c;还能增强用户粘性&#xff0c;提升品牌形象。本文将探讨…

yolov8目标检测pyside6可视化图形界面+检测源码ui文件——用于计数统计

项目结构 YOLOv8模型加载&#xff1a;加载预训练的YOLOv8模型。PySide6 GUI&#xff1a;设计图形用户界面&#xff0c;用于显示检测结果和控制选项。摄像头/视频输入&#xff1a;从摄像头或视频文件读取图像帧。目标检测&#xff1a;使用YOLOv8模型对输入图像进行实时目标检测…