ts

利用selenium和ffmpeg爬取m3u8 ts视频《进击的巨人》

岁酱吖の 提交于 2019-12-01 01:30:54
需求 想看下动漫《进击的巨人》,发现到处被和谐,找不到资源,但是在一个视频网站找到了在线播放, https://www.55cc.cc/dongman/17890/player-2-1.html ,然而不能下载下来(喜欢的东西我一般都看很多遍) 于是想爬虫爬取下,但是看源代码发现视频是m3u8的ts流,而且是双层m3u8的,并且m3u8地址还隐藏在js代码中,于是有2种处理方法: 1.直接requests源码,把js代码的部分逐字解析,找出m3u8地址。 2.直接调用浏览器渲染,将渲染后的网页代码拿到,就可以看到iframe标签中src地址了 获取到首层m3u8地址后就简单了,直接requests请求到第二层m3u8地址,这就是真实地址了,下载后可以看到是很多的ts流小文件,于是有2种处理方法了: 1.直接逐个获取ts地址,然而写到本地磁盘的同一个文件,最后转码到mp4(ts格式太占空间) 2.直接调用ffmpeg,能根据m3u8地址下载ts流并合并为一个文件且同步转码为mp4 上述均采用第二种方法,于是写出个简单的该网站的视频爬虫 源代码 from selenium import webdriver from bs4 import BeautifulSoup import re import requests import os if __name__ == '__main__'

TS学习

ぐ巨炮叔叔 提交于 2019-11-30 19:52:36
随着vue3.0的即将到来,是时候学习一下TS了   简介:TypeScript是一种由微软开发的自由和 开源 的编程语言。它是 JavaScript 的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的 面向对象编程 。   ts并不是js语言,所以它是不能直接被浏览器识别的,所有从ts到js是有一个转换的过程,我们可以称之为编译。   ts转化到js和es6到es5是类似的,所以我们借助webpack 构建工具,将要使用的转化插件是ts-loader,和css-loader,style-loader都是差不多的    https://www.webpackjs.com/guides/typescript/ webpack 使用指南   webpack 4  安装webpack-cli 创建webpack.config.js 文件   执行 npm install --save-dev typescript ts-loader 安装转化插件,创建tsconfig.json 配置文件   整体的项目结构如图      测试一下,我们创建一个ts文件tsdome.js,经过编译后申请bundle.js   tsdome.ts function getname():string { let name: string = "123" return name } console

【MPEG】DVB / ATSC / ISDB区别

自闭症网瘾萝莉.ら 提交于 2019-11-30 14:45:29
硬件的区别: 欧洲“DVB标准”和美国“ATSC数字电视标准”的主要区别如下: (1)方形像素:在ATSC标准中采纳了“方形像素”(Square Picture Eelements),因为它们更加适合于计算机;而DVB标准最初没有采纳,最近也采纳了。此外,范围广泛的视频图像格式也被DVB采纳,而ATSC对此则不作强制性规定。 (2)系统层和视频编码:DVB和ATSC标准都采纳MPEG-2标准的系统层和视频编码,但是,由于MPEG-2标准并未对视频算法作详细规定,因而实施方案可以不同,与两个标准都无关。 (3)音频编码:DVB标准采纳了MPEG-2的音频压缩算法;而ATSC标准则采纳了AC-3的音频压缩算法。 (4)信道编码:两者的扰码器(Radomizers)采用不同的多项式;两者的里德—所罗门前向纠错(FEC)编码采用不同的冗余度,DVB标准用16B,而ATSC标准用功20B;两者的交织过程(Interleaving)不同; 在DVB标准中网格编码(Trellix coding)有可选的不同速率,而在ATSC标准中地面广播采用固定的2/3速率的网格编码,有线电视则不需采用网格编码。 (5)调制技术:卫星广播系统中DVB标准采用QPSK,而ATSC标准不涉及卫星广播。有线电视系统中DVB标准采用任选的16/32/64QAM,而ATSC标准采用16VSB,两者完全不同

「F5 连接NetOps/SecOps与DevOps」 -- 「6」Telemetry Streaming

杀马特。学长 韩版系。学妹 提交于 2019-11-30 10:47:00
本文主要介绍第四个声明式组件Telemetry Streaming(以下简称TS)的使用方式。 TS提供了一种声明式的方式来来监控F5的系统状态和具体的事件日志(主要用于收集业务访问日志),是在整个CICD流水线中的最后一个环节。 TS主要用于监控BIGIP的系统状态和具体的事件日志(如Request Logging),然后通过定义第三方的消费者(如Elasticsearch, Splunk, AWS CloudWatch, Azure Sentinel等),它最大的好处就是免去一系列繁琐的格式匹配,只要定义你最终想需要输出的消费者,就可以达到系统状态和业务日志的收集和整合。举个简单的例子,以前用HSL输出到ELK平台的时候,你必须用Logstash来收HSL的日志,然后进行正则表达式的匹配。而现在,你只需要定义好request logging,然后forward到TS中,TS就可以直接写入到Elasticsearch中,非常方便。 支持的第三方消费者列表如下: 而TS的两个核心组件,一个是Event Listener,一个是System Poller分别用于收集Stats和Events。 目前TS仅支持RPM包安装到BIGIP上的方式,尚未支持docker容器的部署。 当然,要使用TS,和AS3和DO一样,也是需要一些预备的条件的: 必须使用v13.0或者以上的版本

FlutterGo 后端知识点提炼:midway+Typescript+mysql(sequelize)

余生颓废 提交于 2019-11-30 07:15:26
前言 关于 FlutterGo 或许不用太多介绍了。 如果有第一次听说的小伙伴,可以移步 FlutterGo官网 查看下简单介绍. FlutterGo 在这次迭代中有了不少的更新,笔者在此次的更新中,负责开发后端以及对应的客户端部分。这里简单介绍下关于 FlutterGo 后端代码中几个功能模块的实现。 总体来说,FlutterGo 后端并不复杂。此文中大概介绍以下几点功能(接口)的实现: FlutterGo 登陆功能 组件获取功能 收藏功能 建议反馈功能 环境信息 阿里云 ECS 云服务器 Linux iz2ze3gw3ipdpbha0mstybz 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux mysql : mysql Ver 8.0.16 for Linux on x86_64 (MySQL Community Server - GPL) node: v12.5.0 开发语言: midway + typescript + mysql 代码结构: src ├─ app │ ├─ class 定义表结构 │ │ ├─ app_config.ts │ │ ├─ cat.ts │ │ ├─ collection.ts │ │ ├─ user

RN 使用TypeScript(ts)环境搭建

孤者浪人 提交于 2019-11-29 06:27:59
TypeScript 始于JavaScript,归于JavaScript 强大的工具构建 大型应用程序 先进的 JavaScript 添加ts依赖 yarn add --dev typescript yarn add --dev react-native-typescript-transformer 配置tsconfig.json yarn tsc --init --pretty --jsx react-native 配置 rn-cli.config.js touch rn-cli.config.js //如无法执行,可根目录手动创建 rn-cli.config.js添加如下内容: module . exports = { getTransformModulePath ( ) { return require . resolve ( "react-native-typescript-transformer" ) ; } , getSourceExts ( ) { return [ "ts" , "tsx" ] ; } } ; 安装types yarn add --dev @types/react @types/react-native 参考 https://github.com/Microsoft/TypeScript-React-Native-Starter#typescript

C# 两个日期相减得到月数和天数和时and计算 日期减去月之后的日期

泄露秘密 提交于 2019-11-29 05:39:23
【得到相差的 月份数】 DateTime startDate = DateTime.Parse("2006-12-1"); DateTime endDate = DateTime.Parse("2006-02-25"); //结束时间-起始时间 int totalMonth = endDate.Year * 12 + endDate.Month - startDate.Year * 12 - startDate.Month;    【得到相差的 天数 和 小时】 DateTime t1 = DateTime.Parse("2006-12-1"); DateTime t2 = DateTime.Parse("2006-02-25"); System.TimeSpan ts = t2 - t1; int days = ts.Days; //天 int Hours= ts.Hours; //小时 TextBox1.Text = (days / 30).ToString(); 【得到天、时、分、秒差(各为小数)】   DateTime t1 = Convert.ToDateTime("2015-01-02 12:10:9"); DateTime t2 = Convert.ToDateTime("2015-01-03 14:11:10"); System.TimeSpan ts = t2 -

Tslib配置文件ts.conf介绍

无人久伴 提交于 2019-11-29 04:26:19
Tslib 的配置文件ts.conf 是个十分重要的部分, 在ts.conf 中配置了需要加载的插件、插件加载顺序以及插件的一些约束参数,这些配置参数对触摸屏的触摸效果具有十分重要的影响。 其中:pthres 为Tslib 提供的触摸屏灵敏度门槛插件 默认参数为pmin=1;     variance 为Tslib提供的触摸屏滤波算法插件 默认参数为delta=30;     dejitter 为Tslib 提供的触摸屏去噪算法插件 默认参数为delta=100;    linear为Tslib 提供的触摸屏坐标变换插件。 由于各种因素的影响,在不同的硬件平台上,相关参数可能需要调整。以上参数的相互关系为:采样间隔越大,采样点越少,采样越失真,但因为信息量少,容易出现丢笔划等丢失信息情况,但表现出来的图形效果将会越好;去噪算法跟采样间隔应密切互动,采样间隔越大,去噪约束应越小,反之采样间隔越小,去噪约束应越大。去抖算法为相对独立的部分,去抖算法越复杂,带来的计算量将会变大,系统负载将会变重,但良好的去抖算法可以更好的去除抖动,在进行图形绘制时将会得到更好的效果;灵敏度和ts 门槛值为触摸屏的灵敏指标,一般不需要进行变动,参考参考值即 原文: https://www.cnblogs.com/sky-heaven/p/5121083.html 来源: https://www

pixi小游戏开发(vue+typescript)

自古美人都是妖i 提交于 2019-11-29 03:36:21
一直以来都觉得typescript是以后前端发展的趋势,一些大厂的前端项目都已经在用ts来替代js了。 正好最近刚开始准备用pixi写个小游戏,因为刚开工没多久,于是今天就将之前的功能用ts去实现了一下,部分功能之前的博客也有提到过。 用的是vue-cli的3.11版本,并且选择了TypeScript,项目初始化后目录如下图所示(红框除外): 单个页面的代码截图如下: 有一点需要注意的是: @component注解必须加上,无论你是当作路由页面使用还是当作组件使用,不然解析的时候就会有问题(至少生命周期函数不能如期执行),这也是我写的时候踩到的一个坑,其他的都还好,都比较容易上手。 interface.ts 这里定义了业务所需的interface和class,并且export; 到需要使用的页面: import {task,tasklist,keyboard} from '../tsfile/interface' 这里用ts实现了之前的事件队列模式。 其余的就没什么好说的了,ts的用法和java十分类似,包括继承、构造器、类、接口、泛型等等。。。 哦,对了,这个项目也是直接托管到github的,有空就写一点,地址送上: https://github.com/ecojust/pixi_game 来源: https://www.cnblogs.com/eco-just/p

让你的项目使用Ts吧

我与影子孤独终老i 提交于 2019-11-28 22:25:17
推荐在这里阅读 9012年都过半了,还不会用ts你就out了 why ? 三大框架angular2以后的版本完全是用ts开发的, vue对ts的支持也越来越好, React也有TSX组件 还在犹豫什么 本文不涉及框架内容,因为框架的cli已经帮你搭好了ts环境。。。 本文只教你如何在一个demo里搭建Ts环境,好了,我们开始吧 第一步,安装 全局安装typescript npm install typescript -g 安装好以后,在你的项目里就可以使用tsc 命令了 tsc [ts文件名] 使用上面的命令就可以把某个ts文件编译成js文件 tsc 这是编译所有ts文件 第二步, 配置文件 恭喜你,走完第一步你已经成功一大半了! 新建一个json类型的配置文件, 文件名是tsconfig.json。 { "compilerOptions": { // 编译选项 "target": "es2016", // 配置编译目标代码的版本标准 "module": "commonjs", // 配置编译目标使用的模块化标准 "lib": ["es2016"] } } 最简单的配置是这样,后面可以根据需求加上你需要的配置。 :::tip 注意!!!加入配置文件后,使用tsc 命令编译某个ts文件时不需要带上.ts文件后缀, 否则会忽略配置文件 ::: 插播一条重要内容