Python中类似jquery的HTML解析? [英] jquery-like HTML parsing in Python?
问题描述
是否有任何Python库可以让我解析类似于jQuery的HTML文档?
Is there any Python library that allows me to parse an HTML document similar to what jQuery does?
即我希望能够使用CSS选择器语法从文档中获取任意节点集,读取其内容/属性等.
i.e. I'd like to be able to use CSS selector syntax to grab an arbitrary set of nodes from the document, read their content/attributes, etc.
我之前使用过的唯一Python HTML解析库是BeautifulSoup,尽管很好,但我一直认为,如果我有jQuery语法,解析起来会更快. :D
The only Python HTML parsing lib I've used before was BeautifulSoup, and even though it's fine I keep thinking it would be faster to do my parsing if I had jQuery syntax available. :D
推荐答案
如果您精通 BeautifulSoup ,您可以将 soupselect 添加到您的库中.
Soupselect是BeautifulSoup的CSS选择器扩展.
If you are fluent with BeautifulSoup, you could just add soupselect to your libs.
Soupselect is a CSS selector extension for BeautifulSoup.
用法:
>>> from BeautifulSoup import BeautifulSoup as Soup
>>> from soupselect import select
>>> import urllib
>>> soup = Soup(urllib.urlopen('http://slashdot.org/'))
>>> select(soup, 'div.title h3')
[<h3><span><a href='//science.slashdot.org/'>Science</a>:</span></h3>,
<h3><a href='//slashdot.org/articles/07/02/28/0120220.shtml'>Star Trek</h3>,
..]
这篇关于Python中类似jquery的HTML解析?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!