Articles of python

用于在服务器上存储Openssl密码的安全选项(Linux,Python,CherryPy)

我已经实现了一个HTTP服务器(CherryPy和Python),它从客户端(Android)接收encryption文件。 我正在使用OpenSSL来解密上传的文件。 目前我正在使用openssl -enc -pass file:password.txt -in encryptedfile -out decryptedfile来执行解密在服务器端。 正如你所看到的,openssl使用的密码存储在一个纯文本文件(password.txt)中。 有没有更安全的方式来存储这个OpenSSL密码? 谢谢。

通过代码模拟用户浏览

我需要模拟一个像selenium一样浏览网页的用户,包括加载iframe,发出ajax请求等。唯一的问题是它需要在一个无GUI的机器上运行(linux)。 有没有简单的方法来做到这一点与Python或PHP? 请不要告诉我使用xvfb,我已经读过了,这是我的最后一招。我很肯定,应该有更容易的事情。

进程死亡,如果它通过paramiko ssh会话运行,并在最后与“&”

我只是想使用paramiko在后台运行tcpdump 。 这是代码的一部分: ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(host, username=login, password=password) transport = ssh.get_transport() channel = transport.open_session() channel.get_pty() channel.set_combine_stderr(True) cmd = "(nohup tcpdump -i eth1 port 443 -w /tmp/dump20150317183305940107.pcap) &" channel.exec_command(cmd) status = channel.recv_exit_status() 在执行这个代码之后, pgrep tcpdump什么也不返回。 如果我删除&签tcpdump运行正常,但我的sshshell被阻止。 我如何正确地在后台运行tcpdump ? 我试过了什么命令: cmd = 'nohup tcpdump -i eth1 port 443 -w /tmp/dump20150317183305940107.pcap &\n' cmd = "screen -d […]

SSH在短时间后超时? ClientAlive&ConnectTimeout似乎没有做我需要他们做的事情

我正在通过SSH发送一个命令。 这个特定的命令恰好告诉机器重启。 不幸的是,这会挂起我的SSH会话,并不会返回,所以我的脚本无法继续转发到其他任务。 我已经尝试过修改命令本身的各种组合,以包括“exit”和or escape命令,但是在这些情况下,机器都不会在重新启动和closuresSSH会话的命令中使用。 我也尝试了SSH的ConnectTimeout和ClientAlive选项,但他们似乎使重新启动命令被忽略。 是否有一些明显的命令,我在这里失踪?

在Linux上使用python接收多播UDP数据报

我有一个硬件设备,在我的networking上发送多播数据。 我已经写了一个接收数据并打印它的Python脚本。 但是,我发现它只能在我的Windows XP电脑上运行,并且在我的Ubuntu Linux 10.04电脑上无法运行。 在Linux下,没有收到任何东西。 它只是围绕while循环,并没有收到任何数据。 我的代码张贴在下面。 你能看到任何理由,为什么这不会在Linux下工作? 谢谢,Rab。 # Multicast client # Adapted from: http://chaos.weblogs.us/archives/164 # on 05/03/2013 import socket ANY = "0.0.0.0" MCAST_ADDR = "224.0.33.154" MCAST_PORT = 31800 # Create a UDP socket sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP) # Allow multiple sockets to use the same PORT number sock.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1) # Bind […]

阅读pdf文件的内容

有没有一个命令行工具来读取Linux上的PDF文件。请为此指出适当的url。 谢谢..

是否有可能让python打开一个terminal并写信给它?

例如,如果我有这个代码: subprocess.call(['gnome-terminal']) 是否有可能有python输出string到刚才打开的特定terminal? 谢谢!

将每个测序数据提取为单个文件

有一个ecoli.ffn文件,其中的行显示了测序基因的名称: $head ecoli.ffn >ecoli16:g027092:GCF_000460315:gi|545267691|ref|NZ_KE701669.1|:551259-572036 ATGAGCCTGATTATTGATGTTATTTCGCGT AAAACATCCGTCAAACAAACGCTGATTAAT >ecoli16:g000011:55989:gi|218693476|ref|NC_011748.1|:1128430-1131042 GTGTACGCTATGGCGGGTAATTTTGCCGAT >ecoli16:g000012:55989:gi|218693476|ref|NC_011748.1|:1128430-1131042 GTGTACGCTATGGCGGGTAATTTTGCCGAT CTGACAGCTGTTCTTACACTGGATTCAACC CTGACAGCTGTTCTTACACTGGATTCAACC 如上所示,基因名称在第一和第二个结肠之间: g027092 g000011 g000012 我想使用ecoli.ffn生成三个文件: g027092.txt , g000011.txt , g000012.txt ,包含每个测序数据。 例如, g027092.txt将包含原始数据,但没有标题 : $cat g027092.txt ATGAGCCTGATTATTGATGTTATTTCGCGT AAAACATCCGTCAAACAAACGCTGATTAAT 如何做到这一点?

如何在python中传递星号到模块“sh”?

我在Python中使用“sh”模块来调用Linux上的外部命令。 在我的具体情况下,我想称之为“du”命令,因为它比“手动”更有效。 不幸的是,下面的行不起作用: output = sh.du('-sx', '/tmp/*') 但是这确实有效: output = sh.du('-sx', '/tmp/') 如果我传递一个星号,我得到以下错误信息: 'ascii' codec can't encode character u'\u2018' in position 87: ordinal not in range(128) 有谁知道如何处理命令行参数中的星号? 根据要求,这里是堆栈跟踪: Traceback (most recent call last): File "./unittest.py", line 33, in <module> output = sh.du('-sx', '/tmp/*') File "/usr/local/lib/python2.7/dist-packages/sh.py", line 1021, in __call__ return RunningCommand(cmd, call_args, stdin, stdout, stderr) […]

在Linux中实时监控鼠标坐标

我需要一个python编码来在Linux中实时监控鼠标坐标。 我发现下面的编码,它运作良好,但鼠标坐标信息将显示在一个popup的GUI窗口。 现在我不需要在GUI窗口中显示,只需要将鼠标坐标信息保存到文本文件(日志文件)。 有人可以帮助我吗? 谢谢! 另外,如果能按小时保存鼠标坐标信息,那就太好了。 #!/usr/bin/env python """ Corrected, the thread stops now. """ import sys import os from time import sleep import gtk gtk.gdk.threads_init() import threading # uses the package python-xlib # from http://snipplr.com/view/19188/mouseposition-on-linux-via-xlib/ # or: sudo apt-get install python-xlib from Xlib import display old_stdout = sys.stdout sys.stdout = open(os.devnull, 'w') def mousepos(): […]