Category Archives: Python

Gearman(分布式任务调度框架) 简介

在@hacker101的围脖上看到了这个框架,看了下官网,觉得很适合爬虫、多进程并行处理等任务。

看看官方提供的几个例子:

  • Mass PDF quote email
  • Synchronous Image Resize
  • Shard-Query: a PHP project which uses Net_Gearman to execute queries on horizontally partitioned databases and returns the results.[......]

    继续阅读

Python安装lxml(编译安装其依赖的库)

依赖说明:

lxml是libxml2、libxslt的PythonBinding,依赖于libxml2和libxslt。libxslt依赖于libxml2。

由于我们的程序可能要分发到别的机器运行,所以要提取出一个可独立拷贝走的运行时环境,假设该目录为/home/liheyuan/env

1、安装libxml2
wget http://xmlsoft.org/sources/libxml2-2.9.0.tar.gz
tar -xzvf libxml2-2.9.0.tar.g[......]

继续阅读

Python中向gz(gzip)文件中写入utf8(utf-8)字符串

这是一个内牛满面的问题,我从半年前开始找这个问题的答案,今天才解决……

需求版本1:我需要将字符串直接写入成以gz格式,这个很简单。
import gzip
fp = gzip.open("file", "wb")
fp.write(data)
fp.close()
需求版本2:现在字符串data需要是utf-8的,上述方法就不行了,解决方法:
import codecs
gzfp = gzip.open("file&quot[......]

继续阅读

Python拥抱lxml

之前一直在用BeautifulSoup,怎么说呢,上手容易,但经常容易出现各种诡异的问题,却很难找到方法修改。

lxml.html是一个偏向底层的HTML解析器,速度秒杀BeautifulSoup。

网站:http://lxml.de/lxmlhtml.html

解析页面:
# 下载页面,转化编码
import urllib2
str = urllib2.urlopen("http://www.coder4.com").read().decode(&q[......]

继续阅读