一个类似于jquery的python库:pyquery

jopen 10年前

pyquery能够让你在XML文档采用类似jQuery的查询。其API尽可能与jQuery相类似,pyquery使用lxml对xml和html进行快速操作。
你可以使用 PyQuery类从一个字符串,一个lxml文档,一个文件或URL加载一份XML文档:

>>> from pyquery import PyQuery as pq  >>> from lxml import etree  >>> import urllib  >>> d = pq("<html></html>")  >>> d = pq(etree.fromstring("<html></html>"))  >>> d = pq(url='http://google.com/')  >>> # d = pq(url='http://google.com/', opener=lambda url, **kw: urllib.urlopen(url).read())  >>> d = pq(filename=path_to_html_file)

 d 类似于jquery中的 $ :

>>> d("#hello")  [<p#hello.hello>]  >>> p = d("#hello")  >>> print(p.html())  Hello world !  >>> p.html("you know <a href='http://python.org/'>Python</a> rocks")  [<p#hello.hello>]  >>> print(p.html())  you know <a href="http://python.org/">Python</a> rocks  >>> print(p.text())  you know Python rocks

您可以使用一些可在jQuery中,但不在CSS标准的伪类如:first :last :even :odd :eq :lt :gt :checked :selected :file:

>>> d('p:first')  [<p#hello.hello>]

项目主页:http://www.open-open.com/lib/view/home/1414029977934