1

そのため、私は BeautifulSoup の使用方法を理解しようとしており、簡単な検索を行ったところ、lxml が html ページの xpath を解析できることがわかりました。それができれば大好きですが、チュートリアルはそれほど直感的ではありません.

私は Firebug を使用して xpath を取得する方法を知っており、誰かが lxml を使用していて、それを使用して特定の xpath を解析し、それらを出力する方法を説明できるかどうかに興味がありました.. 1 行あたり 5 と言ってください..またはそれが可能かどうか?!

Selenium は Chrome を使用しており、ページを適切に読み込みます。先に進むには助けが必要です。

ありがとう!

4

2 に答える 2

1

lxmlの ElementTree には .xpath() メソッドがあります ( xmlPython ディストリビューションのパッケージの ElementTree にはそれがないことに注意してください!)

例えば

# see http://lxml.de/xpathxslt.html

from lxml import etree

# root = etree.parse('/tmp/stack-overflow-questions.xml')
root = etree.XML('''
        <answers>
            <answer author="dlam" question-id="13965403">AAA</answer>
        </answers>
''')

all_answers = root.xpath('.//answer')

for i, answer in enumerate(all_answers):
    who_answered = answer.attrib['author']
    question_id = answer.attrib['question-id']
    answer_text = answer.text
    print 'Answer #{0} by {1}: {2}'.format(i, who_answered, answer_text)
于 2012-12-20T07:29:38.243 に答える
0

を使用することを好みますlxml。の効率は、大きな要素の抽出lxmlよりも高いためです。seleniumを使用seleniumして Web ページのソースを取得し、ネイティブの の代わりに の xpath を使用してソースを解析できlxmlます。find_elements_with_xpathselenium

于 2016-10-27T05:26:09.133 に答える