lxml.html的value属性

use*_*332 4 python xpath lxml

这是我的代码:

from lxml.html import fromstring
#code
print fromstring(s).xpath('/html/body/div[3]/div/div[2]/div/form/input[4]')
Run Code Online (Sandbox Code Playgroud)

输出是 [<InputElement 2946d20 name='question' type='hidden'>]

我该如何输出值?这个的任何属性?谢谢.

Jam*_*lls 5

通常使用lxml,您可以直接通过.value属性访问元素的值:

>>> from lxml.html import fromstring
>>> s = """<input type="hidden" name="question" value="1234">"""
>>> doc = fromstring(s)
>>> doc.value
'1234'
Run Code Online (Sandbox Code Playgroud)

在您的情况下,您还需要从XPath查询中访问结果列表的第一个元素:

print fromstring(s).xpath('/html/body/div[3]/div/div[2]/div/form/input[4]')[0].value
Run Code Online (Sandbox Code Playgroud)