采用python的pyquery引擎做网页爬虫,进行数据分析

简介:

python下的  pyquery  很给力的 !!!



pyquery 可以让你用jquery语法来对xml进行查询。这个API和jquery十分类似。如果利用lxml,pyquery对xml和html的操作将更加快速。


这个库并不是(至少还不是)一个可以和javascript互交的代码库。只是很喜欢jquery API并且在使用python的过程中,我真的很怀念jquery,所以我告诉我自己“让我们在python里面也使用jquery吧!”所以就有了这个库。


这个库可以有多种用途,比如我可以在将来用pyquery对纯http模板就行编辑,或者可以和Deliverance配套使用对样式进行操作.


这个项目现在基于mercurial开发,并用Bitbucket发布。我有权给任何想要审查代码的人权利。如果你想对代码进行贡献,给我电邮吧。



真心觉得比urllib2好用的多。


http://pypi.python.org/packages/source/p/pyquery/pyquery-0.3.tar.gz

解压缩

python setup.py install

就可以了,可能要安装ezsetup

现在的版本是0.3,还有一些jquery的东西没有实现,比如:radio,:password,以及一些ajax的功能,但是已经够用了,强烈推荐



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
>>> from pyquery  import  PyQuery  as  pq
>>>d = pq( "<html></html>" ) #可以直接拼HTML
可加载一段HTML字符串,或一个HTML文件,或是一个url地址
>>>d = pq(url= 'http://ops.ruifengyun.com/' ) #也可以打开一个url
>>> d( 'title' ) #取title元素
[<title>]
html()和text() ——获取相应的HTML块或文本块
>>> print d( 'title' ).text()
ops 自动运维项目 监控,实时数据,集群管理
根据HTML标签来获取元素
>>> d( '.s' ) #根据类名获取元素
[<li.s>, <li.s>, <li.s>, <li.s>, <li.s>, <li.s>, <li.s>, <li.s>]
注意:当获取到的元素不只一个时,html()、text()方法只返回首个元素的相应内容块
>>> a = d( '#sshcreate li:e(2)' ).find( 'a' ) #复杂点的选择器也是可以的,看来支持的不错
>>> a.attr( 'href' ) #属性操作
'http://monitor.ruifengyun.com/'


1
2
3
4
5
6
7
8
#coding=utf- 8
import  urllib
from pyquery  import  PyQuery
res = urllib.urlopen( 'http://movie.douban.com/subject/2129132/' ).read()
d = PyQuery(res)
print  "主演:"
for  starring  in  d( "a[rel='v:starring']" ):
     print PyQuery(starring).text()



162208580.png




 本文转自 rfyiamcool 51CTO博客,原文链接:http://blog.51cto.com/rfyiamcool/1132725,如需转载请自行联系原作者


相关文章
|
10天前
|
数据采集 Python
【python】爬虫-西安医学院-校长信箱
本文以西安医学院-校长信箱为基础来展示爬虫案例。来介绍python爬虫。
【python】爬虫-西安医学院-校长信箱
|
9天前
|
数据采集 数据可视化 数据挖掘
深入浅出:使用Python进行数据分析
在这篇文章中,我们将探索Python在数据分析中的应用,介绍几个关键的库,如Pandas、NumPy、Matplotlib,以及如何使用它们进行有效的数据处理和可视化。本文旨在为初学者提供一个清晰、简洁的指南,让读者能够快速掌握使用Python进行数据分析的基本技能,并通过一个实例加深理解。不同于其他文章的冗长解释和复杂示例,我们将以最直接、易懂的方式,让你迅速上手,即使是完全没有编程背景的读者也能轻松跟上。
|
3天前
|
Python 数据挖掘 存储
Python 数据分析(PYDA)第三版(七)(4)
Python 数据分析(PYDA)第三版(七)
|
Python Shell 存储
Python 数据分析(PYDA)第三版(七)(3)
Python 数据分析(PYDA)第三版(七)
Python 数据分析(PYDA)第三版(七)(3)
|
机器学习/深度学习 数据可视化 Python
Python 数据分析(PYDA)第三版(六)(2)
Python 数据分析(PYDA)第三版(六)
|
机器学习/深度学习 Python 数据挖掘
Python 数据分析(PYDA)第三版(六)(1)
Python 数据分析(PYDA)第三版(六)
|
3天前
|
Python 数据格式 XML
Python 数据分析(PYDA)第三版(三)(1)
Python 数据分析(PYDA)第三版(三)
|
3天前
|
数据挖掘 索引 Python
Python 数据分析(PYDA)第三版(二)(3)
Python 数据分析(PYDA)第三版(二)
|
3天前
|
存储 数据挖掘 索引
Python 数据分析(PYDA)第三版(二)(1)
Python 数据分析(PYDA)第三版(二)
Python 数据分析(PYDA)第三版(二)(1)
|
3天前
|
数据挖掘 Python 索引
Python 数据分析(PYDA)第三版(一)(3)
Python 数据分析(PYDA)第三版(一)
Python 数据分析(PYDA)第三版(一)(3)