标签 python 下的文章

谷歌相似图片搜索的原理及实现

得到指纹以后,就可以对比不同的图片,看看64位中有多少位是不一样的。在理论上,这等同于计算"汉明距离"(Hamming distance)。如果不相同的数据位不超过5,就说明两张图片很相似;如果大于10,就说明这是两张不同的图片。 具体的代码实现,可以参见Wote用python语言写的imgHash.py。代码很短,只有53行。使用的时候,第一个参数是基准图片,第二个参数是用来比较的其他图片所在的目录,返回结果是两张图片之间不相同的数据位数量(汉明距离)。

Python 线程池扫描端口

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

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

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

Python的MD5

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模拟登录豆瓣

这只是一个练习的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

用python进行GUI开发的选择

Python最大的特点就在于她的快速开发功能。作为一种胶水型语言,python几乎可以渗透在我们编程过程中的各个领域。这里我简单介绍一下用python进行gui开发的一些选择。  1.Tkinter  Tkinter 似乎是与tcl语言同时发展起来的一种界面库。tkinter是python的配备的标准gui库,也是opensource的产物。Tkinter可用 于windows/linux/unix/macintosh操作系统,而且显示风格是本地化的。Tkinter用起来非常简单,python自带的 IDLE就是采用它写的。除此外,tkinter的扩展集pmw和Tix功能上都要相对它强大,但tkinter却是最基本的。我认为,在用python 做gui开发,tkinter是最基本的知识,所以这个环节是必须要学习的。你或许在以后的开发中并不常用tkinter,但是一些小型的应用上面,他还 是很有用的,而且开发速度也很快。

Tornado初接触

Tornado( http://www.tornadoweb.org )是Facebook开源出来的框架,是脸书开源的一个轻量级,高效率,非阻塞的python实现的web框架。 使用Tornado要求Python2.5以上版本。 如果用到了tornado.httpclient,还必须安装pycurl。如果是使用Python2.5,需要安装simplejson,更高版本就不用了。 使用Tornado开发,不用安装(当然,你也可以按照说明文档安装), 只需要将源码包解压后放在某一个目录,比如/path/to/tornado, 然后在每个用到Tornado的python文件靠前的位置写上