目的是能使用Python进行rtmp推流,方便在h264帧里加入弹幕等操作。librtmp使用的是0.3.0,使用树莓派noir官方摄像头适配的。通过wireshark抓ffmpeg的包一点点改动,最终可以在red5和斗鱼上推流了。没怎么写过python,有不恰当的地方请包涵。上代码:#--coding:utf-8--#http://blog.csdn.net/luhangleiimportpicameraimporttimeimporttraceback
系统 2019-09-27 17:47:12 1884
#堆排序defheap_sort(arr):root=len(arr)//2-1while(root>=0):heap_adjust(arr,root,len(arr)-1)root=root-1#此时生成的大顶堆,满足每个根节点为子树中最大,因此,之后只需要对最顶的子树进行调整i=len(arr)-1whilei>=0:arr[0],arr[i]=arr[i],arr[0]heap_adjust(arr,0,i-1)i=i-1defheap_adjust
系统 2019-09-27 17:45:50 1884
保证只能运行一个脚本实例,方法是程序运行时监听一个特定端口,如果失败则说明已经有实例在跑。使用装饰器实现,便于重用复制代码代码如下:importfunctoolsdefjust_one_instance(func):'''装饰器如果已经有实例在跑则退出复制代码代码如下::return:'''@functools.wraps(func)deff(*args,**kwargs):importsockettry:#全局属性,否则变量会在方法退出后被销毁globa
系统 2019-09-27 17:45:27 1884
importsubprocessoutput=Popen(["mycmd","myarg"],stdout=PIPE).communicate()[0]importsubprocessp=subprocess.Popen(['ls','-a'],stdout=subprocess.PIPE,stderr=subprocess.PIPE)out,err=p.communicate()printout#workonUnix/Linuxonlyimportcom
系统 2019-09-27 17:45:26 1884
Pythonsocket网络编程初学python,前段时间买了两本书《python编程从入门到实践》《Python核心编程第三版》,第一本书主要讲的是一些基本语法和一些基本的使用方法,而第二本则深入很多,自己看来也是一知半解,刚好看到了这部分网络编程,依然有好多不太理解的地方,不过想来通过自己不断的摸索,不断地搜寻资料学习,早晚应该会变得通透吧.......这部分主要使用的模块就是socket模块,在这个模块中可以找到socket()函数,该函数用于创建套
系统 2019-09-27 17:38:34 1884
少劳多得Decorator与Python之前引入的元编程抽象有着某些共同之处:即使没有这些技术,您也一样可以实现它们所提供的功能。正如MicheleSimionato和我在可爱的Python专栏的早期文章中指出的那样,即使在Python1.5中,也可以实现Python类的创建,而不需要使用“元类”挂钩。Decorator根本上的平庸与之非常类似。Decorator所实现的功能就是修改紧接Decorator之后定义的函数和方法。这总是可能的,但这种功能主要是
系统 2019-09-27 17:38:33 1884
心血来潮写了个多线程抓妹子图,虽然代码还是有一些瑕疵,但是还是记录下来,分享给大家。Pic_downloader.py#-*-coding:utf-8-*-"""CreatedonFriAug0717:30:582015@author:Dreace"""importurllib2importsysimporttimeimportosimportrandomfrommultiprocessing.dummyimportPoolasThreadPooltype
系统 2019-09-27 17:38:32 1884
hasattr(object,name)作用:判断对象object是否包含名为name的特性(hasattr是通过调用getattr(ojbect,name)是否抛出异常来实现的)。示例:>>>hasattr(list,'append')True>>>hasattr(list,'add')Falsegetattr(object,name,default):作用:返回object的名称为name的属性的属性值,如果属性name存在,则直接返回其属性值;如果属
系统 2019-09-27 17:38:20 1884
本文实例讲述了Python实现从Web的一个URL中抓取文档的方法,分享给大家供大家参考。具体方法分析如下:实例代码如下:importurllibdoc=urllib.urlopen("http://www.python.org").read()printdoc#直接打印出网页defreporthook(*a):printa#将http://www.renren.com网页保存到renre.html中,#每读取一个块调用一字reporthook函数urll
系统 2019-09-27 17:38:18 1884
我们都知道并发(不是并行)编程目前有四种方式,多进程,多线程,异步,和协程。多进程编程在python中有类似C的os.fork,当然还有更高层封装的multiprocessing标准库,在之前写过的python高可用程序设计方法中提供了类似nginx中masterprocess和workerprocess间信号处理的方式,保证了业务进程的退出可以被主进程感知。多线程编程python中有Thread和threading,在linux下所谓的线程,实际上是LW
系统 2019-09-27 17:38:17 1884