分类"Python"下的内容

Python 线程池扫描端口

aries 发表于 2012-10-31 1549 次浏览 标签 : python
昨天纠结了一会儿线程池的问题,终于可以使这个线程池可用了,真切的感受到了多线程的执行速度确实很犀利,原来的单线程端口扫描那个速度实在不敢恭维,换 成多线程之后马上有了数量级的飞跃(当然看你定义线程数的大小,不能太大,否则线程的额外开销会严重影响性能,过犹不及),下面是代码部分

用sublime text 2 编译 python 遇到中文的问题

aries 发表于 2012-10-27 3567 次浏览
当你用sublime text 2 编译 python的时候,如果输出中有中文,就会出现 [Decode error - output not utf-8] 找了找google,解决了 解决方案: 在插件的文件夹下找到python文件夹,进去、修改Python.sublime-build文件。我的操作系统为win7。 路径为:C:Users您的用户名AppDataRoamingSublime Text 2PackagesPython { "cmd": ["python", "-u", "$file"], "f

[转]认识python的多线程[实例]

aries 发表于 2012-10-25 1853 次浏览
我们在做软件开发的时候很多要用到多线程技术。例如如果做一个下载软件像flashget就要用到、像在线视频工具realplayer也要用到因为要同时下载media stream还要播放。其实例子是很多的。 线程相对进程来说是“轻量级”的,操作系统用较少的资源创建和管理线程。程序中的线程在相同的内存空间中执行,并共享许多相同的资源。 1) 在python中如何创建一个线程对象? 如果你要创建一个线程对象,很简单,只要你的类继承threading.Thread,然后在__init__里首先调用threading.Thread的__init__方法即可:

[转]使用python第三方框架requests多线程获取数据

aries 发表于 2012-10-25 6961 次浏览 标签 : pythonrequests
以前一直使用python的urllib2来抓取页面采集内容,偶然发现python有一个非常好用的封装好的库requests可以省去很多事。具体安装和使用教程可以直接参考官方文档: 简单的写了一个通过requests多线程获取页面数据的代码。不贴所有代码了,代码如下:

[转]Python的函数参数形式

aries 发表于 2012-10-25 1369 次浏览
Python函数参数可以用星号+形参名形式(*arg或**arg)方式。其中*arg方式必须在传统参数后边出现,而**arg则必须在*arg后出现。 例如: def test(x, y=5, *a, **b): print x, y, a, b 函数调用结果: test(1) ===> 1 5 () {} test(1,2) ===> 1 2 () {} test(1,2,3) ===> 1 2 (3,) {} test(1,2,3,4) ===> 1 2 (3,4) test(

Pyqt4无边框窗体拖动的代码

aries 发表于 2012-10-22 2431 次浏览
这个UI是用Qt designer生成的,自己没有系统的学习过Python,有好多东西都走了弯路了! 这里记录一下,感谢google,感谢stackoverflow,感谢csdn 只是有一样不爽,现在google.com.hk搜索出来的东西不能直接打开了,只能挂代理上.... 代码:

Python几个常用的文件操作函数

aries 发表于 2012-10-21 1357 次浏览
获得文件扩展名函数:返回扩展名 和 扩名之前的文件名路径。 os.path.splitext('xiaomizhou.jpg') 返回('xiaomizhou' ,'.jpg') os和os.path模块 os.listdir(dirname):列出dirname下的目录和文件 os.getcwd():获得当前工作目录 os.curdir:返回但前目录('.') os.chdir(dirname):改变工作目录到dirname os.path.isdir(name):判断name是不是一个目录,name不是目录就返回false os.path.isfile(name):判断n

Python多线程练习(一)

aries 发表于 2012-10-21 1532 次浏览
#! /usr/bin/env python #coding=utf-8 # FIlename ex1.py import threading from time import sleep def test_func(id): for i in range(0,5): sleep(1) print('thread %d is running %d' % (id,i)) threads = [] for i in range(0,3): t = threading.Thread(target = test_func ,args=(i,)) threads.a

Python的MD5

aries 发表于 2012-10-21 1594 次浏览 标签 : pythonmd5
def md5sum(s): try: import hashlib m = hashlib.md5() m.update(s) return m.hexdigest() except: import md5 m = md5.new() m.update(s) return m.hexdigest()

用Python模拟登录豆瓣

aries 发表于 2012-10-18 5131 次浏览 标签 : python
这只是一个练习的DEMO 代码如下: # -*- coding: utf-8 -*- from urllib import urlencode import cookielib, urllib2,urllib def __login(): headers={'User-Agent':'Mozilla/5.0 (Windows;U;Windows NT 5.1;zh-CN;rv:1.9.2.9)Gecko/20100824 Firefox/3.6.9'} values = {'form_email':'xxxx@xx.com','form_passwor