1================= 2Другие расширения 3================= 4 5PyQuery расширение 6================== 7 8Через аттрибут :meth:`~grab.ext.pquery.PyqueryExtension.pyquery` вам доступен `PyQuery` объект, связанный с содержимым документа. `PyQuery <http://packages.python.org/pyquery/>`_ - это наслойка поверх lxml API, позволяющая выбирать элементы с помощью jQuery-селекторов:: 9 10 >>> g = Grab() 11 >>> g.go('http://yandex.ru') 12 <grab.response.Response object at 0x1159b10> 13 >>> print g.pyquery('ol.b-news__news li:eq(0)')[0].text_content() 14 1. Дальневосточники активно голосуют на выборах президента России 15 16BeautifulSoup расширение 17======================== 18 19Через аттрибут :meth:`~grab.ext.soup.BeautifulSoupExtension.soup` вы можете обращаться к DOM-дереву документа, через API BeautifulSoup. Обратите внимание, что это расширение не доступно по-умолчаню. Если оно вам нужно, создайте свой класс, унаследованный от классов `Grab` и :class:`grab.ext.soup.BeautifulSoupExtension`:: 20 21 >>> from grab.ext.soup import BeautifulSoupExtension 22 >>> class MyGrab(Grab, BeautifulSoupExtension): 23 ... pass 24 ... 25 >>> g = MyGrab() 26 >>> g.go('http://yandex.ru') 27 <grab.response.Response object at 0x13ea390> 28 >>> g.soup.title 29 <title>Яндекс</title> 30