Friday, July 30, 2010

使用python的lxml库解析html

[cc lang="python"]import urllib2
import lxml.html as H

def getjarinfo(url):
c=urllib2.urlopen(url)

f=c.read()
doc = H.document_fromstring(f)
tables=doc.xpath("//table[@id='download']")
pinpais=doc.xpath("//td[@id='music']")
jixings=doc.xpath("//div[@id='game']")
jars = doc.xpath("//table[@id='download']//tr[2]/td[1]/a[1]")
for j in range(len(pinpais)):
print jars[j].get('href')
print pinpais[j].text_content()
print jixings[j].text_content()
e=doc.xpath(u"//div[text()='%s']" % u"游戏")
describe=e[0].getnext().text_content()
#r = doc.xpath("//table[@id='download']//tr[2]/td[1]/a[1]")[0]
#jarurl=r.get('href')

if __name__ == '__main__':
url='http://google.com/'
getjarinfo(url)
[/cc]

Saturday, July 24, 2010

淘宝的开源玩具

不知道淘宝是打着开源的名义吸引人才还是怎么着,反正开源只是玩具,请问淘宝赞助过什么开源项目吗?真正的推动的开源了吗?

还不如网易做了个linux发行版的镜像这么实在,为什么会这样,很显然淘宝里面不懂开源却要用开源说事儿的人是领导了啊。好像人家有英超,咱就来个中超,结果一下让中过足球倒退了好几十年。震撼啊。

淘宝的玩具肯定是玩不长的,不过1年淘宝就会把这个半生不熟的东西扔垃圾箱。为什么,因为他们根本就不是准备做开源,来吸引下眼球而已。这就是有中过特色的社会主义市场经济。

Monday, July 12, 2010

互联网产品设计的40个超实用的Web设计工具

本文将会展示一些web设计师应该经常会使用到的工具。如果你需要一些灵感,你可以访问最流行的设计展示站点来寻找你需要的好作品和好例子。
一些设计相关的工具,在线生成器,免费字体站点,模板站点都将帮助你更有效率测试和管理站点。记住,并不是什么都亲自完成才是最好的方式,一定程度的借鉴将会让 你以更轻松的方式完成任务。

1. Deviantart


Deviantart是互联网站最大的艺术展示站点之一。你可以在这里找到好灵感。

deviantart-web-designer-tools-useful

Thursday, July 8, 2010

怎样在linux下修改ID3信息

mid3iconv
由于Ubuntu中的Amarok等播放器只支持UTF8字符,所以在Amarok中常常出现乱码。解决方案如下:
[cc lang='text' ]sudo apt-get install python-mutagen[/cc]
修改mp3中编码:
到你的music目录去
[cc lang='text' ]find . -iname "*.mp" -execdir mid3iconv -e GBK {} \;[/cc]

Wednesday, July 7, 2010

6个Linux性能监控命令行工具


  1. htop http://htop.sourceforge.net/
    一个可以让用户与之交互的进程查看器。作为文本模式的应用程序,主要用于控制台或 X 终端中。当前具有按树状方式来查看进程,支持颜色主题,可以定制等特性。

Thursday, July 1, 2010

Range number in MySQL

To obtain a random integer R in the range [cci lang='sql' line_numbers='false']i <= R < j[/cci], use the expression [cci lang='sql' line_numbers='false']FLOOR(i + RAND() * (j – i))[/cci]. For example, to obtain a random integer in the range the range [cci lang='sql' line_numbers='false']7 <= R < 12[/cci], you could use the following statement:

[cci lang='sql' line_numbers='true']SELECT FLOOR(7 + (RAND() * 5));[/cci]