Articles of python

如何在运行时安装和导入Python模块?

我想写一个脚本来自动设置一个全新的Ubuntu安装并安装一个基于Django的应用程序。 由于脚本将在新服务器上运行,因此Python脚本需要自动安装一些必需的模块。 这是脚本。 #!/usr/bin/env python import subprocess import os import sys def pip_install(mod): print subprocess.check_output("pip install %s" % mod, shell=True) if __name__ == "__main__": if os.getuid() != 0: print "Sorry, you need to run the script as root." sys.exit() try: import pexpect except: pip_install('pexpect') import pexpect # More code here… pexpect的安装是成功的,但是下一行import pexpect失败了。 我认为它是因为在运行时代码不知道新安装的pexpect 。 如何在运行时安装和导入Python模块? […]

如何卸载Python2.6

在我的Fedora11机器上已经安装了python2.6,我可以使用以下步骤成功安装python 2.7: wget http://www.python.org/ftp/python/2.7/Python-2.7.tar.bz2 tar -xvjf Python-2.7.tar.bz2 cd Python* ./configure –prefix=/opt/python27 make make install vi ~/.bash_profile ## replaced PATH=$PATH:$HOME/bin ## with PATH=$PATH:$HOME/bin:/opt/python27/bin ## reload .bash_profile source ~/.bash_profile echo "/opt/python27/lib" > /etc/ld.so.conf.d/python27.conf ldconfig 但是,当我检查python版本系统使用通过terminal(python -V),它仍然显示python 2.6。 我将如何使系统使用python2.7作为其默认的Python? 或者如果可能的话,我将如何卸载python2.6? 提前致谢!

我的虚拟环境(python)导致我的PYTHONPATH中断?

在我的/ etc / profile中,我设置了PYTHONPATH。 但是,当我source myvirtual-env 然后在Python中执行此操作: >>> import sys >>> print sys.path 我没有看到我的path在任何地方。

如何获得进程的内存使用百分比?

使用下面的代码,我可以得到MiB中给出进程的内存消耗: def memory_usage_psutil(): # return the memory usage in MB import psutil process = psutil.Process(os.getpid()) mem = process.get_memory_info()[0] / float(2 ** 20) return mem 我怎样才能改变这个返回内存消耗的百分比? 更新 :我需要在terminal执行特定进程的top命令时获取%MEM列的当前值。 例如 :我需要这个函数返回14.2的VirtualBox进程的进程ID。

如何让Apache在Flask webapp上提供静态文件

我在尝试让Apache服务我的静态文件时遇到500内部错误。 该应用程序将在本地托pipe(而不是www面临)。 将不会有DNS解决“www.domain.com”的名称。 我希望能够通过input服务器的IP地址访问应用程序,当我在networking上。 这是我的httpd.conf文件(我在RHEL上): <Directory /var/www/testapp> Order allow,deny Allow from all </Directory> WSGIScriptAlias / /var/www/testapp/service.wsgi 如果我将WSGIScriptAlias更改为WGSIScriptAlias /test /var/www/testapp/service.wsgi则可以在inputIP时查看我的静态文件,但仍然无法从[IP] /testing。 无论如何,我希望能够使用service.py脚本来处理所有GET / POST请求,所以我希望我的别名从/开始,而不是其他地方。 我所有的静态文件都在/ var / www / html中(在我弄乱了httpd.conf之前,Apache会自动显示这些文件,现在我只得到一个500)。 这是我的service.wsgi: import sys sys.path.insert(0, '/var/www/testapp') from service import app as application 这是我的service.py: from flask import Flask app = Flask(__name__) @app.route("/") def hello(environ, start_response): status = '200 […]

当试图使用它时,Google云端语音api投掷403

我使用谷歌云语音api python我做了所有的步骤在“ 如何使用谷歌语音识别api在python? ”在Ubuntu和Windows以及当我试图从这里运行简单的脚本 – “ https: //github.com/GoogleCloudPlatform/python-docs-samples/blob/master/speech/api/speech_rest.py “ 我得到下一个错误: <HttpError 403 when requesting https://speech.googleapis.com/$discovery/rest?version=v1beta1 returned "Google Cloud Speech API has not been used in project google.com:cloudsdktool before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/speech.googleapis.com/overview?project=google.com:cloudsdktool then retry. If you enabled this API recently, wait a few minutes for the action to propagate to […]

如何分配IP地址到Python中的接口?

我有python脚本,为我的无线和有线接口设置IP4地址。 到目前为止,我使用subprocess命令如: subprocess.call(["ip addr add local 192.168.1.2/24 broadcast 192.168.1.255 dev wlan0"]) 我怎样才能使用python库设置接口的IP地址? 如果有什么办法可以使用python库获得已经存在的IPconfiguration?

从Python访问802.11无线pipe理帧

从Linux上的Python我想嗅探802.11pipe理的“探测请求”框架。 Scapy可以这样做: # -*- coding: utf-8 -*- from scapy.all import * def proc(p): if ( p.haslayer(Dot11ProbeReq) ): mac=re.sub(':','',p.addr2) ssid=p[Dot11Elt].info ssid=ssid.decode('utf-8','ignore') if ssid == "": ssid="<BROADCAST>" print "%s:%s" %(mac,ssid) sniff(iface="mon0",prn=proc) 或者从tshark这样的: tshark -n -i mon0 subtype probereq -R 'wlan.fc.type_subtype eq 4' -T fields -e wlan.sa -e wlan_mgt.ssid 我们可以redirecttshark的输出,并用一些Python(不漂亮,但它的工作原理)。 但是,这两个选项都具有GPL许可,这使得潜在的商业项目变得棘手。 因此,我正在试图找出Python中针对这个特定问题的“低级”解决scheme。 从谷歌我设法找出两个潜在的方向来尝试: Pcap库:似乎有三个可用于Python的pcap库: pylibpcap , pypcap和pcapy 。 […]

Python CGIHTTPServer崩溃与“OSError:权限被拒绝”

我从我的主目录运行以下命令: python -m CGIHTTPServer 这运行服务器,但是当我尝试访问cgi-bin目录中的脚本时,我得到: Traceback (most recent call last): File "/usr/lib/python2.7/CGIHTTPServer.py", line 251, in run_cgi os.execve(scriptfile, args, env) OSError: [Errno 13] Permission denied 以root身份运行并没有什么区别。 这些文件似乎拥有所有权限: student@bandersnatch:~$ ls -lhR .: total 12K drwxr-xr-x 2 student student 4.0K Jun 13 18:38 cgi-bin drwxr–r– 2 student student 4.0K Jun 10 2004 kalpy -rwxrwxrwx 1 student student 2.0K […]

Python的select()行为很奇怪

我在理解select.select的行为时遇到了一些麻烦。 请考虑下面的Python程序: def str_to_hex(s): def dig(n): if n > 9: return chr(65-10+n) else: return chr(48+n) r = '' while len(s) > 0: c = s[0] s = s[1:] a = ord(c) / 16 b = ord(c) % 16 r = r + dig(a) + dig(b) return r while True: ans,_,_ = select.select([sys.stdin],[],[]) print ans s […]