用Descriptor来实现类级属性(Property)
admin 12年前(2015-03-16) 42浏览
上篇文章简单介绍了python中描述器(Descriptor)的概念和使用,有心的同学估计已经Get√了该技能。本篇文章通过一个Descriptor的使用场景再次给出一个案例,让不了解情况的同学可以更容易理解。 先说说decorator 这两个单词确...
admin 12年前(2015-03-16) 42浏览
上篇文章简单介绍了python中描述器(Descriptor)的概念和使用,有心的同学估计已经Get√了该技能。本篇文章通过一个Descriptor的使用场景再次给出一个案例,让不了解情况的同学可以更容易理解。 先说说decorator 这两个单词确...
admin 12年前(2015-03-16) 4507浏览
自动登陆可能是写爬虫的第一步,如果都不能登陆,很多东西爬不到的。这也不是第一次写包含验证码识别的自动登陆脚本了。这次有点被坑住了,把这次的记录下来。 这次要自动登陆的网站地址是:2013年株洲市中小学教师全员培训 http://zhuzhou2013...
admin 12年前(2015-03-16) 22080浏览
前言: 好久都没来写博客,最近忙啥去了呢? 一是忙于saltstack的二次开发,二是云计算的学习研究中,所以就一直没写东西,今天给大家介绍个工具。 好了,开始正文! 1.首先来说一下为什么要web ssh? 有人是说,有xshell,secureR...
admin 12年前(2015-03-16) 947浏览
在开发项目过程中,为了方便调试代码,经常会向stdout中输出一些日志,默认的这些日志就直接显示在了终端中。而一般的应用服务器,第三方库,甚至服务器的一些通告也会在终端中显示,这样就搅乱了我们想要的信息。 解决 我们可以通过对有用的信息设置不同颜色来...
admin 12年前(2015-03-16) 4252浏览
在使用Python来编写运维脚本时,相信大家都使用过subprocess与paramiko这两个模块。 其中,subprocess主要用于本地,而paramiko则是用于远程登录执行以及通过sftp传输文件。 而在使用过fabric这个模块之后,我非...
admin 12年前(2015-03-16) 3591浏览
保证只能运行一个脚本实例,方法是程序运行时监听一个特定端口,如果失败则说明已经有实例在跑。 使用装饰器实现,便于重用 import functools def just_one_instance(func): ''' 装饰器 如果已经有实例在跑则退出...
admin 12年前(2015-03-15) 3874浏览
有个网友百度到了我的文章《python模拟登陆登陆二:获取和处理发送post request和head数据》,其中就遇到post的部分参数动态改变的问题,因为部分参数是javascript运行得到的结果。 网友的邮件如下: 很有幸能看到你的文章《py...
admin 12年前(2015-03-15) 2647浏览
Python 默认输出字典是一行,查找和查看都不方便,如下 [root@aikaiyuan control_sh]# cat t.py a = {'temperature_status': 'OP_STATUS_OK', 'cpu_status': ...
admin 12年前(2015-03-15) 4815浏览
1,xen是什么? XEN是一个基于X86平台的虚拟机系统,它支持多个操作系统共用系统硬件,而且更重要的是,它不会导致操作系统的功能性和性能性的劣化。它可以支持多种操作系统的虚拟化,比如Linux,BSD,Windows XP等等。 2,为什么使用x...
admin 12年前(2015-03-15) 8490浏览
上篇文章《python模拟登陆登陆一:验证码与cookies的同步处理思路》 ,我验证了下自动登录的过程,以cookies与验证码如何同步的问题。 今天这篇文章说下如何获取和处理发送post request和head数据。 工具: firefox浏览...
admin 12年前(2015-03-15) 4634浏览
在很早的时候,就听网上的文章说: python有GIL,所以在单进程内,即使使用多线程也无法利用到多核的优势,同一时刻,python的字节码只会运行在一个cpu上。 以前也是奉为真理,直到今天在对自己的python server做性能测试的时候,发现...
admin 12年前(2015-03-15) 47浏览
最近碰到“程序速度大大降低”的说法,还是直接用数据说明比较有信服力,以及可以找出真正问题所在。 Python自带了几个性能分析的模块:profile、cProfile和hotshot,使用方法基本都差不多,无非模块是纯Python还是用C写的。 官网...
admin 12年前(2015-03-15) 3913浏览
为测试系统多线程并发操作时的响应,今天写了个简单的python脚本往mysql中插入、取出数据,用到了MySQLdb、threading模块。 其中threading模块是对thread模块的一个面向对象的封装,比较好用。 import MySQLd...
admin 12年前(2015-03-15) 4015浏览
虽然并非你编写的每个 Python 程序都要求一个严格的性能分析,但是让人放心的是,当问题发生的时候,Python 生态圈有各种各样的工具可以处理这类问题。 分析程序的性能可以归结为回答四个基本问题: 正运行的多快 速度瓶颈在哪里 内存使用率是多少 ...
admin 12年前(2015-03-15) 4460浏览
以下是我做调试或分析时用过的工具的一个概览。如果你知道有更好的工具,请在评论中留言,可以不用很完整的介绍。 日志 没错,就是日志。再多强调在你的应用里保留足量的日志的重要性也不为过。你应当对重要的内容打日志。如果你的日志打的足够好的话,单看日志你就能...
admin 12年前(2015-03-15) 952浏览
httplib2功能介绍:http://code.google.com/p/httplib2/ httplib2实例页面:http://code.google.com/p/httplib2/w/list httplib2问题提交:http://cod...
admin 12年前(2015-03-15) 50浏览
这几天配置OpenVPN,使用了用户名密码的身份认证方式,借助已有的postfix邮箱帐号,省去了再为每个人设置用户名密码的麻烦。 原理很简单,OpenVPN服务器配置里有这样一句: auth-user-pass-verify /etc/openvp...
admin 12年前(2015-03-14) 4036浏览
python3 抓取网页资源的 N 种方法 1、最简单 import urllib.request response = urllib.request.urlopen('http://python.org/') html = response.rea...
admin 12年前(2015-03-13) 1163浏览
最近在进行 saltstack 的过程中发现,在一个集群中,集群有 20 台服务器,其中只有 5 台能成功连接到 master ,其他的怎么都连接不上,因此进行记录下。 1、首先当时确定的是,我集群中的所有服务器,使用 hostname 都能看到主机...
admin 12年前(2015-03-13) 37浏览
源码包 http://pan.baidu.com/s/1eQzPJB8 应用环境: 使用salt写了个自动部署mysql的配置配置管理文件,由于mysql的有版本号,端口等不确定属性,需要使用pillar来单独配置每个minion的属性。 一,原始方...
admin 12年前(2015-02-03) 4568浏览
做个程序需要用到系统的cpu、内存、网络的使用情况,百度之后发现目前使用python获取这些信息大多是调用系统命令(top、free等)。其实多linux命令也是读取/proc下的文件实现的,索性不如自己写一个。 一、计算cpu的利用率 要读取cpu...
admin 12年前(2014-09-14) 4140浏览
前言 越来越多的人使用emacs作为开发工具. 甚至skype,gmail,豆瓣FM都能通过emacs. 作为一个产品开发,肯定使用很多插件,设置一些快捷键来提高开发效率.以前一直使用 prelude,很久之后发现有以下问题: 比如开启python语...
admin 12年前(2014-08-11) 9483浏览
天碰到这个问题,用Python获得本地IP地址,首先想到用socket.gethostbyname,代码如下: 程序代码: import socket ip = socket.gethostbyname(socket.gethostname()) p...
admin 12年前(2014-08-11) 8794浏览
python是一门有趣的语言,当然也可以做一些有趣的东西. 先看看这个最简单的web服务器. import SimpleHTTPServer<br>SimpleHTTPServer.test() 当然,这个server只能在localho...
admin 12年前(2014-08-11) 3714浏览
渗透测试从互联网找到了入侵内网的入口点之后剩下的就内网渗透测试了。 有人说到了内网还不容易,随便拿个hscan一抓一大把弱口令。我同意这个看法,但是在我看来,内网环境复杂得多,要想精确获取自己想要的目标,要处理的内容要多得多,只有获得了必要的信息,才...
admin 12年前(2014-05-09) 3385浏览
gunicorn是一个python web 服务部署工具,类似flup,完全用python开发,参考了ruby的部署工具: Unicorn project 官网:http://docs.gunicorn.org/en/18.0/ gunicorn主要...
admin 12年前(2014-04-30) 3127浏览
正则表达式是从信息中搜索特定的模式的一把瑞士军刀。它们是一个巨大的工具库,其中的一些功能经常被忽视或未被充分利用。今天我将向你们展示一些正则表达式的高级用法。 举个例子,这是一个我们可能用来检测电话美国电话号码的正则表达式: r'^(1[-s.])?...
admin 12年前(2014-04-29) 26184浏览
1、pip下载安装 1.1 pip下载 # wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb...
admin 12年前(2014-04-25) 3509浏览
摘要: 本文旨在总结一些编写表达式的技巧和原理。鉴于介绍python中re模块的使用方法的文章太多。所以本文在基础方面都是略过,而在回溯原理和一些技巧方面记录一点点学习总结。 目录:[ – ] 基础规则的介绍 python中的转义符号干扰 基本字符 ...
admin 13年前(2014-03-25) 834浏览
在《Core Python Programming 2nd》中学习到了装饰器,这对我来说是个完全陌生的语法,第一遍愣是没看懂,很有必要记一下。 第一眼看到这个词Decorator,我联想到了DP中的Decorator模式,后来才知道完全不是这么一回事...