摘要:
InsecurePlatformWarning: A true SSLContext object is not available.# yum -y install openssl-devel libffi-devel# pip install pyopenssl ndg-httpsclient ... 阅读全文
随笔分类 - python学习
Pytho实现tail -f
2014-11-03 12:20 by cmsd, 549 阅读, 收藏, 编辑
摘要:
实现Python版的tail -f功能tail -f 的功能非常好用。我们用Python也可以实现这样的功能。实现的原理是通过Python版本的inotify获得文件的更新消息,从而读取更新的行。pyinotify的下载地址https://github.com/seb-m/pyinotify下载解压... 阅读全文
windows安装pip 和easy_install
2014-10-30 21:56 by cmsd, 172 阅读, 收藏, 编辑
摘要:
先安装windows版的easy_install下载然后下载pip ,python setup.py install安装好的 pip和easy_install通常在 python目录的Scripts中,如C:\python27\Scripts将该目录加入 windows的PATH (修改window... 阅读全文
django上传下载大文件
2014-10-30 21:50 by cmsd, 853 阅读, 收藏, 编辑
摘要:
上传def upFile(file): upload_dir = '/tmp/upload/%s' % username if request.method == 'POST': upload_file = request.FILES.get('file', None) ... 阅读全文
Python之配置文件模块 ConfigParser
2014-07-30 12:56 by cmsd, 437 阅读, 收藏, 编辑
摘要:
read(filename) #读取配置文件
sections() #返回所有section
options(section) #返回section中的option
items(section) #返回sectiond的键值对
get(section, option) #返回某个section,某个option的值,类型是string
getint, getfloat, getboolean 等等返回的只是类型不同
修改配置
add_section(section) #添加section
set(section,option,value) #添加或者修改值
write(open(filename,'w')) #保存到配置文件 阅读全文
Gunicorn + Django 部署
2014-07-19 23:54 by cmsd, 825 阅读, 收藏, 编辑
摘要:
1. 下载gunicorn
pip install gunicorn
2. 运行
gunicorn AutoSa.wsgi:application ## AutoSa为我project的名字,后面的不变即可
-b 监听ip和端口,默认是 127.0.0.1:8000 如:0.0.0.0:80
-w 开启多个进程 如 -w 8 阅读全文
python安装MySQLdb驱动
2014-07-19 18:08 by cmsd, 252 阅读, 收藏, 编辑
摘要:
安装了好几次了,索性几个笔记吧,经常因为返回gcc报错安装 python-devel包即可 阅读全文
django apache 通过wsgi部署
2014-07-19 11:47 by cmsd, 306 阅读, 收藏, 编辑
摘要:
生产上部署django
1. 修改settings关闭debug
DEBUG = False
ALLOWED_HOSTS = ['*']
2. 安装wsgi
yum -y install mod_wsgi # yum安装因为我的apche是yum安装的 官方下载地址:http://code.google.com/p/modwsgi/ 阅读全文
python MySQLdb中文乱码
2014-07-18 17:20 by cmsd, 1088 阅读, 收藏, 编辑
摘要:
我用了下面几个措施,保证MySQL的输出没有乱麻:
1 Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)
2 MySQL数据库charset=utf-8
3 Python连接MySQL是加上参数 charset=utf8
4 设置Python的默认编码为 utf-8 (sys.setdefaultencoding(utf-8) 阅读全文
Python生成8位随机密码
2014-07-15 14:49 by cmsd, 1656 阅读, 收藏, 编辑
摘要:
#!/usr/bin/env python# -*- coding: utf-8 -*- import randomimport string #第一种方法 seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!... 阅读全文
python AES 双向对称加密解密
2014-07-11 17:36 by cmsd, 34633 阅读, 收藏, 编辑
摘要:
高级加密标准(Advanced Encryption Standard,AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。
AES只是个基本算法,实现AES有若干模式。其中的CBC模式因为其安全性而被TLS(就
是https的加密标准)和IPSec(win采用的)作为技术标准。简单地说,CBC使用密码和salt 阅读全文
pip是用国内镜像源
2014-04-20 22:40 by cmsd, 9797 阅读, 收藏, 编辑
摘要:
pipy国内镜像目前有:
http://pypi.douban.com/ 豆瓣
http://pypi.hustunique.com/ 华中理工大学
http://pypi.sdutlinux.org/ 山东理工大学
http://pypi.mirrors.ustc.edu.cn/ 中国科学技术大学 阅读全文
subprocess使用
2014-02-21 17:28 by cmsd, 395 阅读, 收藏, 编辑
摘要:
1. Popen使用test =subprocess.Popen('ls /tmpa', shell=True, stdout = subprocess.PIPE, stderr=subprocess.PIPE)print test.stdout.read()print test.stderr.read()说明: shell=True代表unix下相当于args前面添加了"/bin/sh“”-c”,window下,相当于添加"cmd.exe/c", stdout、stderr输出到PIPE中否则会直接print出来,我们使用Popen就是为了获取这 阅读全文
python实现跳板机
2013-11-19 23:10 by cmsd, 886 阅读, 收藏, 编辑
摘要:
公司有1000多台服务器,线上机器都是禁止root登录的,所以平时是用普通用户登录,然后在su到root,密码都是在excel表中存的,这样登录一台机器,输两次命令,搜两次密码,实在很麻烦,有一天备份6台机器上的redis,登录就把我登录烦了,于是就用python来实现登录操作,密码表存到mysql中,用python的pexpect来实现交互。pexpect的用法看http://www.ibm.com/developerworks/cn/linux/l-cn-pexpect1/最后用 ./passwdbox.py ip即可自动登录#!/usr/local/bin/python# coding. 阅读全文
pyOpenSSL0.13安装失败
2013-11-11 16:51 by cmsd, 1970 阅读, 收藏, 编辑
摘要:
/usr/lib64/python2.4/distutils/dist.py:236: UserWarning: Unknown distribution option: 'zip_safe' warnings.warn(msg)running build_extbuilding 'OpenSSL.SSL' extensiongcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --p 阅读全文
python urllib2 Basic认证
2013-10-11 18:06 by cmsd, 1916 阅读, 收藏, 编辑
摘要:
1.通过添加http header 来实现import urllib2from base64 import encodestringurl = 'http://202.108.1.51'user = 'a'passwd = 'aa' req = urllib2.Request(url)basestr = encodestring('%s:%s' % (user,passwd))[:-1]req.add_header('Authorization','Basic %s' % basestr)f = u 阅读全文
python ftplib,smtplib,poplib学习
2013-09-30 17:21 by cmsd, 523 阅读, 收藏, 编辑
摘要:
一.ftplibfrom ftplib import FTPftpobj = FTP(IP或域名) #实例化对象ftpobj.login('username','passwd') ##调用方法登录ftpobj.pwd() #当前目录ftpobj.cwd('/') #切换目录ftpobj.dir([path[,..[,cb]]) #显示path 目录里的内容,可选的参数cb 是一个回调函数,它会被传给retrlines()方法ftpobj.nlst([path[,..]) #以列表方式显示path内的内容ftpobj.r... 阅读全文
python gzip,bz2学习
2013-09-24 10:15 by cmsd, 867 阅读, 收藏, 编辑
摘要:
一.gzipimport gzip1.解压缩a = gzip.open('a.tar.gz')b = open('a.tar','wb')b.write(a.read())a.close()b.close()2.压缩文件b = open('c.tar','rb')c = gzip.open('c.tar.gz','wb')c.write(b.read())b.close(0c.close(0二.bz2bz2的使用方法与gz一样import bz21.解压a=bz2.BZ2File(& 阅读全文
python pickle 和 shelve模块
2013-09-16 15:16 by cmsd, 485 阅读, 收藏, 编辑
摘要:
pickle和shelve模块都可以把python对象存储到文件中,下面来看看它们的用法吧1.pickle 写: 以写方式打开一个文件描述符,调用pickle.dump把对象写进去 dn = {'baidu':'www.baidu.com','qq':'www.qq.com','360':'www.360.cn'} name = ['mayun','mahuateng','liyanhong'] f = open(r'C:\a.txt' 阅读全文
python password输入
2013-09-11 13:32 by cmsd, 580 阅读, 收藏, 编辑
摘要:
1.linux下用getpass,没有星号提示,符合linux风格from getpass import getpasspwd = getpass('Enter the password: ')2.windows下用msvcrtimport msvcrt, sys def pwd_input(): chars = [] while True: newChar = msvcrt.getch() if newChar in '\r\n': # 如果是换行,则输入结束 print '' br... 阅读全文