centos pil(centos卸载软件)

大家好,关于centos pil很多朋友都还不太明白,今天小编就来为大家分享关于centos卸载软件的知识,希望对各位有所帮助!

python 多进程和多线程配合

由于python的多线程中存在PIL锁,因此python的多线程不能利用多核,那么,由于现在的计算机是多核的,就不能充分利用计算机的多核资源。但是python中的多进程是可以跑在不同的cpu上的。因此,尝试了多进程+多线程的方式,来做一个任务。比如:从中科大的镜像源中下载多个rpm包。

#!/usr/bin/pythonimport reimport commandsimport timeimport multiprocessingimport threadingdef download_image(url):

print'*****the%s rpm begin to download*******'% url

commands.getoutput('wget%s'% url)def get_rpm_url_list(url):

commands.getoutput('wget%s'% url)

rpm_info_str= open('index.html').read()

regu_mate='(?<=<a href=")(.*?)(?=">)'

rpm_list= re.findall(regu_mate, rpm_info_str)

rpm_url_list= [url+ rpm_name for rpm_name in rpm_list] print'the count of rpm list is:', len(rpm_url_list) return rpm_url_list123456789101112131415161718192021

def multi_thread(rpm_url_list):

threads= []# url=';

# rpm_url_list= get_rpm_url_list(url)

for index in range(len(rpm_url_list)): print'rpm_url is:', rpm_url_list[index]

one_thread= threading.Thread(target=download_image, args=(rpm_url_list[index],))

threads.append(one_thread)

thread_num= 5# set threading pool, you have put 4 threads in it

while 1:

count= min(thread_num, len(threads)) print'**********count*********', count###25,25,...6707%25

res= [] for index in range(count):

x= threads.pop()

res.append(x) for thread_index in res:

thread_index.start() for j in res:

j.join() if not threads: break1234567891011121314151617181920212223242526

def multi_process(rpm_url_list):

# process num at the same time is 4

process= []

rpm_url_group_0= []

rpm_url_group_1= []

rpm_url_group_2= []

rpm_url_group_3= [] for index in range(len(rpm_url_list)): if index% 4== 0:

rpm_url_group_0.append(rpm_url_list[index]) elif index% 4== 1:

rpm_url_group_1.append(rpm_url_list[index]) elif index% 4== 2:

rpm_url_group_2.append(rpm_url_list[index]) elif index% 4== 3:

rpm_url_group_3.append(rpm_url_list[index])

rpm_url_groups= [rpm_url_group_0, rpm_url_group_1, rpm_url_group_2, rpm_url_group_3] for each_rpm_group in rpm_url_groups:

each_process= multiprocessing.Process(target= multi_thread, args=(each_rpm_group,))

process.append(each_process) for one_process in process:

one_process.start() for one_process in process:

one_process.join()# for each_url in rpm_url_list:# print'*****the%s rpm begin to download*******'%each_url## commands.getoutput('wget%s'%each_url)123456789101112131415161718192021222324252627282930313233

def main():

url=';

url_paas=';

url_paas2=';

start_time= time.time()

rpm_list= get_rpm_url_list(url_paas) print multi_process(rpm_list)# print multi_thread(rpm_list)

#print multi_process()

# print multi_thread(rpm_list)

# for index in range(len(rpm_list)):

# print'rpm_url is:', rpm_list[index]

end_time= time.time() print'the download time is:', end_time- start_timeprint main()123456789101112131415161718

代码的功能主要是这样的:

main()方法中调用get_rpm_url_list(base_url)方法,获取要下载的每个rpm包的具体的url地址。其中base_url即中科大基础的镜像源的地址,比如:,这个地址下有几十个rpm包,get_rpm_url_list方法将每个rpm包的url地址拼出来并返回。

multi_process(rpm_url_list)启动多进程方法,在该方法中,会调用多线程方法。该方法启动4个多进程,将上面方法得到的rpm包的url地址进行分组,分成4组,然后每一个组中的rpm包再最后由不同的线程去执行。从而达到了多进程+多线程的配合使用。

代码还有需要改进的地方,比如多进程启动的进程个数和rpm包的url地址分组是硬编码,这个还需要改进,毕竟,不同的机器,适合同时启动的进程个数是不同的。

ubuntu怎么安装Django

导读:今天首席CTO笔记来给各位分享关于ubuntu怎么安装Django的相关内容,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

如何在ubuntu12.04下搭建PythonDjango环境

首先Ubuntu自带Python然后安装Django

这个是安装配置使用NginxUwsgi来配置Django

照着一步步来就行很简单生产环境使用

django安装各种包报错

Ubuntu新环境下搭建djangorestapi时安装MySQL-python报错。

需要安装(sudo)apt-getinstallpython-dev

python-dev是必须的?----error:Python.h

你需要自己安装一个源外的python类库,而这个类库内含需要编译的调用pythonapi的c/c++文件

你自己写的一个程序编译需要链接libpythonXX.(a|so)

(注:以上不含使用ctypes/ffi或者裸dlsym方式直接调用libpython.so)

其他正常使用python或者通过安装源内的python类库的不需

Installingcollectedpackages:MySQL-python

Runningsetup.pyinstallforMySQL-python...error

Completeoutputfromcommand/usr/bin/python-u-c"importsetuptools,tokenize;__file__='/tmp/pip-build-ZzcKHT/MySQL-python/setup.py';f=getattr(tokenize,'open',open)(__file__);code=f.read().replace('\r\n','\n');f.close();exec(compile(code,__file__,'exec'))"install--record/tmp/pip-Ur_CBU-record/install-record.txt--single-version-externally-managed--compile:

runninginstall

runningbuild

runningbuild_py

creatingbuild

creatingbuild/lib.linux-x86_64-2.7

copying_mysql_exceptions.py-build/lib.linux-x86_64-2.7

creatingbuild/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/__init__.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/converters.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/connections.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/cursors.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/release.py-build/lib.linux-x86_64-2.7/MySQLdb

copyingMySQLdb/times.py-build/lib.linux-x86_64-2.7/MySQLdb

creatingbuild/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/__init__.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/CR.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/FIELD_TYPE.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/ER.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/FLAG.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/REFRESH.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

copyingMySQLdb/constants/CLIENT.py-build/lib.linux-x86_64-2.7/MySQLdb/constants

runningbuild_ext

building'_mysql'extension

creatingbuild/temp.linux-x86_64-2.7

x86_64-linux-gnu-gcc-pthread-DNDEBUG-g-fwrapv-O2-Wall-Wstrict-prototypes-fno-strict-aliasing-Wdate-time-D_FORTIFY_SOURCE=2-g-fstack-protector-strong-Wformat-Werror=format-security-fPIC-Dversion_info=(1,2,5,'final',1)-D__version__=1.2.5-I/usr/include/mysql-I/usr/include/python2.7-c_mysql.c-obuild/temp.linux-x86_64-2.7/_mysql.o

_mysql.c:29:20:fatalerror:Python.h:Nosuchfileordirectory

#include"Python.h"

^

compilationterminated.

error:command'x86_64-linux-gnu-gcc'failedwithexitstatus1

----------------------------------------

Command"/usr/bin/python-u-c"importsetuptools,tokenize;__file__='/tmp/pip-build-ZzcKHT/MySQL-python/setup.py';f=getattr(tokenize,'open',open)(__file__);code=f.read().replace('\r\n','\n');f.close();exec(compile(code,__file__,'exec'))"install--record/tmp/pip-Ur_CBU-record/install-record.txt--single-version-externally-managed--compile"failedwitherrorcode1in/tmp/pip-build-ZzcKHT/MySQL-python/

python2.7怎么安装django

Django提供3种发行版本,推荐使用官方的稳定版本:

1.你的操作系统提供的发行版本(Linux)

2.官方稳定版本(推荐)

3.开发测试版本

Django本质上是Python语言的一个类库,因此可以通过pip工具安装。这也是最简便最好的安装方式。不建议通过下载安装包或者编译源码进行安装的方法,除非你的环境无法连接外部网络。

首先,确保你已经安装了pip!

在Ubuntu下:sudopipinstalldjango

在windows下:命令行中pipinstalldjango

如果要指定版本,可使用pipinstalldjango=1.14.1这种形式。

摘自:刘江的博客和教程:liujiangblog-com,里面有详细的描述。

ubuntu怎么部署django

记录一次在全新服务器下配置Django项目说明:

Linux操作系统:Ubuntu16.04

Django版本:1.8.7

Python版本:2.7.12

运行模式:Ubuntu+Django+Apache2+Mod_wsgi

Apache2配置文件:sudovi/etc/apache2/apache2.conf

Apache2错误日志:cat-n/var/log/apache2/error.log

Apache2命令:

启动:sudo/etc/init.d/apache2start

重启:sudo/etc/init.d/apache2restart

停止:sudo/etc/init.d/apache2stop

配置过程如遇到错误,请仔细检查前面每一步是否有完全按照教程来执行。

1.安装Django

a)sudoapt-getinstallpython-pip

b)sudopipinstallDjango==1.10.5

2.安装Apache2

a)sudoapt-getinstallapache2

3.安装libapache2-mod-wsgi

a)sudoapt-getinstalllibapache2-mod-wsgi

4.创建项目及应用

a)创建项目

django-adminstartproject项目名称

b)创建应用(如果有应用就上传到项目目录下,否则创建)

pythonmanage.pystartapp应用名称

5.项目和应用建好后给予权限

a)chown-Rwww-data:www-data项目名称

6.配置Apache2

a)sudovi/etc/apache2/apache2.conf

169-177行是我添加的内容

169Directory/home/z/product/Code(改为自己的项目目录)

170OptionsIndexesFollowSymLinks

171AllowOverrideNone

172Requireallgranted

173/Directory

174WSGIScriptAlias//home/z/product/Code/Code/wsgi.py(改为自己的项目文件)

175WSGIPythonPath/home/z/product/Code(改为自己的项目文件)

176Alias/static//home/z/product/Code/business/static/(改为自己的项目内的应用)

177Alias/static//home/z/product/Code/yyl/static/(改为自己的项目内的应用)

169-175行的功能为添加项目至Apache

176和177行是为了加载应用内/static/目录内的静态资源

错误及解决方案:

下面错误可能只是自己当前项目中所遇到的错误,其他项目请忽略。

问题一:ImportError:Nomodulenamedcelery

sudopipinstallgit+

问题二:NomodulenamedPIL.ImImagePlugin

sudoapt-getinstallpython-imaging

问题三:Nomodulenamedrequests

sudopipinstallrequests

问题四:Nomodulenameddss.Serializer

sudopipinstalldjango-simple-serializer

Ubuntu14.04下Django+MySQL安装部署全过程

Ubuntu16.04下安装部署Nginx+uWSGI+Django1.9.7

Django的详细介绍:请点这里

Django的下载地址:请点这里

本文永久更新链接地址:

腾讯云python系列之部署Django流程

我的是centos系统

我们通过腾讯的控制台的登录按钮,进入到远程登录的界面,如图1为腾讯云的控制台界面。图2为登录以后的密码输入窗口

进入登录界面以后,会是图3这样子的情况,我们输入ls,会发现没有任何文件,输入piplist会提示没有安装pip,而输入python时,会显示默认安装了python2.7.5版本

一、首先我们要安装pip,根据自己的系统自行选择

centos类系统:sudoyuminstallpythonpython-pip

ubuntu类系统:sudoapt-getinstallpythonpython-pip

安装好以后piplist一下,看看都有哪些python安装包

二、安装django

我安装的Django版本为1.9.8的,根据自己的情况,更改后面的版本号

sudopipinstallDjango==1.9.8

可能会出现图4这样的问题,原因是我们pip版本太低,直接按照提示升级我们的pip

更新了pip以后,安装可能会出现如图5这样的问题,我们不要在==两边加空格,因为加空格会导致不识别django的版本。

安装完以后你会发现自己找不到Django放在哪里了,其实我的django被安装在了

/usr/lib/python2.7/site-packages/

并且我们要执行创建django的命令在django的bin目录下,如图6

/usr/lib/python2.7/site-packages/django/bin

进入到该目录下,运行django-admin.pystartprojectFirstProject,创建出FirstProject的项目。就会在该目录下创建出FirstProject这个项目,进入项目,运行pythonmanage.pyrunserver

问题来了,我们运行以后,不要点击,这个是进不去的,我们应该通过腾讯云的公网ip来访问网站,但又有同学发现通过公网的ip也无法访问我们的网站,这是因为自己的腾讯云没有打开相应的端口,所以无法访问。开放端口在安全组这个选项,如图7

进入安全组,新建我们的开放端口,我开放的是80端口。如图8

开放端口后,我们重新pythonmanage.pyrunserver0.0.0.0:80,如图9

通过公网ip,就可以直接访问我们的网站了。如图10

如何在ubuntu下配置Django和apache+mod

参考一下:

Apache是全球使用率最高的、开源的一个Web服务端软件,现在介绍一下如何在Ubuntu14.04上安装和配置Apache。

工具/原料

Ubuntu14.04

方法/步骤

命令行安装Apache

打开"终端窗口",输入"sudoapt-getinstallapache2"--回车--输入"root用户的密码"--回车--输入"y"--回车,安装完成

默认的网站根目录的路径

Apache安装完成后,默认的网站根目录是"/var/www/html",在终端窗口中输入"ls/var/www/html"--回车--在网站根目录下有一个"index.html"文件,在ie浏览器中输入"127.0.0.1"--回车,就可以打开该页面。

Apache的第一个配置文件apache2.conf的路径

在终端窗口中输入"ls/etc/apache2"--回车--有一个"apache2.conf"的配置文件。

Apache的第二个配置文件000-default.conf的路径

在终端窗口中输入"ls/etc/apache2/sites-available"--回车--有一个"000-default.conf"的配置文件。

修改网站的根目录

1、在终端窗口中输入"sudovi/etc/apache2/apache2.conf"--回车--找到"Directory/var/www/"的位置--更改"/var/www/"为新的根目录就可以了。

2、在终端窗口中输入"sudovi/etc/apache2/sites-available/000-default.conf"--回车--找到"DocumentRoot/var/www/html"的位置--更改"/var/www/html"为新的根目录就可以了,这里我把它更改为"/var/www/"。

重启Apache

在终端窗口中输入"sudo/etc/init.d/apache2restart"--回车--"输入root用户密码"--回车--重启成功。

复制"index.html"文件到"/var/www"目录下

在终端窗口中输入"cp/var/www/html/index.html/var/www/"--回车--输入"ls/var/www"--回车--有一个"index.html"文件,复制成功。

测试更改网站根目录是否成功

在"火狐浏览器"中输入"127.0.0.1"--能访问到"index.html"文件--更改成功

结语:以上就是首席CTO笔记为大家介绍的关于ubuntu怎么安装Django的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。

阅读剩余
THE END