Articles of python

如何获得进程的祖父母身份证

我怎样才能得到当前进程的父进程ID? 一般给一个进程ID我怎么能得到它的父进程ID? 比如os.getpid()可以用来获取父进程的id和os.getppid(),我如何得到祖父母, 我的目标是Linux(Ubuntu的),所以平台的具体答案是好的。

确定TCP listen()队列中的积压连接的当前数量

有没有办法find在Linux上的TCP套接字上等待accept()的当前连接尝试次数? 我想我可以统计在每个事件循环中触发EWOULDBLOCK之前成功的accept()的数量,但是我使用隐藏这些细节的高级库(Python / Twisted)。 它也使用epoll()而不是老式的select()/ poll()循环。 我试图得到一个高性能的无阻塞networking服务器上的负载的一般意义,我认为这个数字将是一个很好的描述。 加载平均值/ CPU统计数据帮助不大,因为我在并发工作进程中执行了大量的磁盘I / O操作。 Linux上的这些统计数据中的大多数花费了等待磁盘I / O作为加载的一部分(对于我的特定服务器体系结构来说,这不是)。 accept()和response之间的延迟也不是一个好的措施,因为一旦服务器接近它,每个请求通常会得到很快的处理。 我只是试图找出我有多接近达到一个突破点,服务器不能更快地派遣请求比他们进来。

当我做pip –version它显示错误为ImportError:没有名为pyparsing的模块

我尝试安装/卸载pyparsing以及它不起作用。 我坚持这一点,我也必须安装额外的库。 这是错误消息: Traceback (most recent call last): File "/usr/bin/pip", line 5, in <module> from pkg_resources import load_entry_point File "/home/rachana/.local/lib/python2.7/site-packages/pkg_resour‌​ces/__init__.py", line 72, in <module> import packaging.requirements File "/home/rachana/.local/lib/python2.7/site-packages/packaging/‌​requirements.py", line 9, in <module> from pyparsing import stringStart, stringEnd, originalTextFor, ParseException ImportError: No module named pyparsing 我怎样才能解决这个问题?

Python:os.stat()。st_size给出了与du不同的值

我正在创build一个实用程序,它将遍历目录并获取所有目录的子目录和文件的大小并存储值。 但是,大小不正确计算。 这是我的课程,通过所有的子目录自动recursion: class directory: ''' Class that automatically traverses directories and builds a tree with size info ''' def __init__(self, path, parent=None): if path[-1] != '/': # Add trailing / self.path = path + '/' else: self.path = path self.size = 4096 self.parent = parent self.children = [] self.errors = [] for i in […]

如果一个命令行程序不确定stdout的编码,它应该输出什么编码?

我有一个用Python编写的命令行程序,当我通过命令行上的另一个程序pipe理它时, sys.stdout.encoding是None 。 这是有道理的,我想 – 输出可能是另一个程序,或者一个文件,你redirect到,或者其他什么,它不知道什么编码是需要的。 但我也不是! 这个程序将以不同的方式被许多不同的人使用(幽默我)。 我应该玩它安全,只输出ascii(用问号replace非ASCII字符)? 或者我应该输出UTF-8,因为这些日子如此普遍?

如何在Python中播放声音而不中断播放音乐/其他声音

我正在python的计时器上工作,当等待时间结束时,这个计时器响起。 我使用下面的代码: from wave import open as wave_open from ossaudiodev import open as oss_open def _play_chime(): """ Play a sound file once. """ sound_file = wave_open('chime.wav','rb') (nc,sw,fr,nf,comptype, compname) = sound_file.getparams( ) dsp = oss_open('/dev/dsp','w') try: from ossaudiodev import AFMT_S16_NE except ImportError: if byteorder == "little": AFMT_S16_NE = ossaudiodev.AFMT_S16_LE else: AFMT_S16_NE = ossaudiodev.AFMT_S16_BE dsp.setparameters(AFMT_S16_NE, nc, fr) […]

scapy中的sniff函数的filter不能正常工作

似乎snifffunction的filter不能正常工作。 我用下面的filter执行嗅探 a=sniff(count=1,filter="tcp and host 192.168.10.55 and port 14010") 但有一段时间, sniff捕获这样的UDP数据包: >>> a=sniff(count=1,filter="tcp and host 192.168.10.55 and port 14010") >>> a <Sniffed: TCP:0 UDP:1 ICMP:0 Other:0> 有一段时间, sniff捕获错误端口的TCP数据包: >>> a=sniff(count=1,filter="tcp and host 192.168.10.55 and port 14010") >>> a <Sniffed: TCP:1 UDP:0 ICMP:0 Other:0> >>> a[0] <Ether dst=00:26:55:cb:3b:10 src=00:22:64:55:c8:89 type=0x800 |<IP version=4L ihl=5L tos=0x10 len=92 id=8683 […]

如何安装源自apt软件包的Python绑定?

我在Heroku有一个网站,现在我想使用使用ZBar条形码扫描器的python-qrtools软件包。 在一个正规的Debian(基于)我可以做一个简单的: sudo apt-get install python-qrtools 根据命令dpkg-query -L python-qrtools ,这将安装以下内容: /usr/lib/python2.7/dist-packages/qrtools-1.2.egg-info /usr/lib/python2.7/dist-packages/qrtools.py /usr/share/doc/python-qrtools/copyright /usr/share/doc/python-qrtools/changelog.Debian.gz 当我查看qrtools.py的导入时,它也会执行一个import zbar ,这是(据我所知)zbar包的python绑定( 这里是Pypi链接 )。 我有点惊讶zbar或它的python绑定不在python-qrtools apt包中。 所以我的第一个问题: 何时何地安装zbar软件包? 继续前进,我决定在Heroku上安装ZBar和Python绑定。 我设法使用这个ZBar buildpack安装ZBar,所以我只需要安装zbar Python绑定。 从python命令行我已经看到它是一个源自.so文件的绑定: >>> import zbar >>> zbar.__file__ '/usr/lib/python2.7/dist-packages/zbar.so' 所以我做了一个简单的sudo pip install zbar ,不幸的是我在下面粘贴了一个大量的编译错误。 所以我的主要问题实际上是以下几点: 如何分别安装zbar python绑定(所以没有apt)? 所有的提示,欢迎! Downloading/unpacking zbar Downloading zbar-0.10.tar.bz2 Running setup.py (path:/tmp/pip_build_root/zbar/setup.py) egg_info for package zbar Installing […]

创buildPython电子邮件(接收)服务器

我正在尝试为Linux VPS生成一个简单的Python脚本,它将允许我接收邮件,(然后我可以在Python中做它的东西,就像打印到stdout一样)。 没有比这更复杂的了。 我不想使用“沉重”的解决scheme或服务器程序,我真的只是一个简单的Python脚本,我可以运行,并能够接收邮件。 Pythons的smtpd模块能满足这个任务吗? 迄今为止我听到了相互矛盾的意见。 如果不是的话,你还有什么build议? 也许你自己一起黑了一些代码? 在这个阶段,像lamson这样的项目看起来太重了(尽pipe如果我找不到更好的解决scheme,这可能是不可避免的)。

阅读,突出显示,以编程方式保存PDF

我想写一个小脚本(它将运行在无头的Linux服务器上),读取PDF,突出显示与我传递的string数组中的任何内容匹配的文本,然后保存修改过的PDF。 我想我最终会使用像python绑定到poppler的东西,但不幸的是有接近零的文档,我有python旁边的零经验。 如果任何人可以指向我的教程,例子,或一些有用的文件,让我开始这将不胜感激!