Articles of python

我怎样才能使用NETLINK套接字从PYTHON的内核空间的数据?

我怎样才能使用NETLINK套接字从PYTHON的内核空间的数据?

如何使python脚本在Shell上提示时按“enter”键

我想自动升级程序。 我用Python运行这个代码: import subprocess subprocess.call('./upgrade') 当我这样做的时候,我从shell获得了升级过程成功启动的输出,然后我得到了“按Enter键继续”。 我将如何自动化这个过程,以便Python脚本自动“按下”时inputproms? 我需要在这个过程中做两次。 我需要在Linux上完成这个工作,而不是在Windows上完成,因为这是在这里问的: 生成键盘事件另外,这需要在Shell提示input后专门完成。 谢谢你的帮助。 我没有find解决办法: 按Enter作为命令input

将IP转换为主机名

我想编写一个python脚本来将IP地址转换为主机名。 我正在使用Linux机器。 我没有在whois命令中看到这些信息。 是否有任何命令总是提供正确的主机名(尽可能准确)?

如何让脚本一直在linux下运行?

我试图一直运行一个简单的Python脚本。 我希望它在启动时自动启动,并能从故障中恢复。 也就是说,如果发生了导致脚本停止的失败,我并不在意,只是希望它能够再次开始运行。 如果整个设备重新启动,我很好。 我刚刚使用init.dtesting了一个工作脚本,但不知道如何从故障中恢复? 有一个cronjob检查一个PID的存在? 我也想检查完整性。 也就是说,我想确保脚本不会被其他进程意外修改。 我听说过检查一个CRC32的脚本对一个已知的值,但不知道如何得到正在执行的文件上的任何一种md5。 这是一个超级简单的Python脚本btw(一个文件,〜20lines)。 我不确定这是否真的改变了一切。

通过pip安装错误在virtualenv中安装lxml:命令'x86_64-linux-gnu-gcc'failed

当我激活virtualenv并input'pip install lxml'安装过程崩溃消息: /usr/bin/ld: cannot find -lz collect2: error: ld returned 1 exit status error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

如何在Linux中包含Python模块?

我发现这个xgoogle python模块http://github.com/pkrumins/xgoogle ,非常有趣。 我到底应该如何在Linux中包含或安装这些文件? 如果我想用xgoogle python模块做这样的事情? >>from xgoogle.search import GoogleSearch 我知道我们可以使用from,import来使用模块,但是要包含一个外部模块,我该怎么做? 我应该需要安装模块还是什么?

python阅读HID

我想做一个程序,从附加到Linux系统的HIDinput,并从这些程序生成MIDI。 我在MIDI方面没问题,但我在HID方面苦苦挣扎。 虽然这种方法工作正常(从这里采取): #!/usr/bin/python2 import struct inputDevice = "/dev/input/event0" #keyboard on my system inputEventFormat = 'iihhi' inputEventSize = 16 file = open(inputDevice, "rb") # standard binary file input event = file.read(inputEventSize) while event: (time1, time2, type, code, value) = struct.unpack(inputEventFormat, event) print type,code,value event = file.read(inputEventSize) file.close() 当有很多事件时,CPU使用率会很高; 特别是如果跟踪鼠标,大型移动占用我系统上近50%的CPU。 我猜是因为这个时候的结构。 那么,有没有更好的方法来做到这一点在Python? 我最好不要使用非维护或旧的库,因为我希望能够分发这个代码,并使它在现代发行版上工作(所以最终用户的包pipe理器中最终的依赖关系应该很容易得到)

Pythonsubprocess在返回输出之前在后台运行

我有一些我想用perf进行debugging的Python代码。 为此,我想使用subprocess。 以下命令返回进程的指令相关信息,直到通过Ctrl ^ C退出命令。 perf stat -p <my_pid> 现在,我想在后台运行Python代码,直到我希望能够终止它的操作并打印命令输出。 展现我的意思: x = subprocess.call(["perf","stat","-p",str(GetMyProcessID())]) .. CODE TO DEBUG .. print x # I want to terminate subprocess here and output 'x' 现在,我想确定在'print x'行中要做些什么来终止进程并检查输出。 任何想法/帮助表示赞赏。 欢呼声和感谢提前,

Python,gevent,urllib2.urlopen.read(),下载加速器

我正在尝试为Linux构build一个下载加速器。 我的程序使用gevent,os和urllib2。 我的程序收到一个URL并尝试同时下载文件。 我所有的代码都是有效的。 我唯一的问题是,urllib2.urlopen.read()阻止我同时运行.read()函数。 这是抛出我的例外。 Traceback (most recent call last): File "/usr/lib/pymodules/python2.7/gevent/greenlet.py", line 405, in run result = self._run(*self.args, **self.kwargs) File "gevent_concurrent_downloader.py", line 94, in childTasklet _tempRead = handle.read(divisor) # Read/Download part File "/usr/lib/python2.7/socket.py", line 380, in read data = self._sock.recv(left) File "/usr/lib/python2.7/httplib.py", line 561, in read s = self.fp.read(amt) File "/usr/lib/python2.7/socket.py", line 380, […]

python pygtk如何在特定的显示器上放置一个窗口

我在基于OS Linux(suse,ubuntu)上使用Python PyGTK库在具有多个显示监视器的设备上工作。 我试图把一个全屏窗口(在python,gtk.Window)连接到设备的特定显示监视器。 我使用下面的代码: n_monitors = gtk.gdk.Screen.get_n_monitors() # Get number of monitors. gtk.gdk.Screen.get_monitor_geometry(*monitor_number*) # Get the size of a specific monitor. 第二个API返回监视器大小和偏移量信息。 gtk.Window.move(offset_x, offse_y)可用于在特定监视器上移动窗口。 虽然这似乎并不一直工作。 它看起来像窗口有鼠标位置的亲和力,或者如果显示器的分辨率不一样,这是行不通的。 有没有GTK.Window的任何属性,这将有助于缓解这个问题。 我试图玩下面的没有帮助: gtk.Window.set_position(gtk.WIN_POS_NONE) gtk.Window.set_gravity(gtk.gdk.GRAVITY_NORTH_WEST) 有任何想法吗。