在使用lxml.html?</option>解析表单时,有没有办法访问<option>文本

时间:2012-08-20 10:41:59

标签: python lxml

我正在尝试解析一个看起来像这样的html表单:

<select name="country">
<option value="1">Afghanistan</option>
<option value="2">Albania</option>
<option value="3">Algeria</option>
<option value="4">Andorra</option>
....
</select>

使用lxml.html.parse解析文档后,我可以使用以下命令访问值列表:

doc.forms[0].elements["country"].value_options

但是,这会返回原始值列表(['1','2','3','4'...])而没有相应的国家/地区名称。有没有一种简单的方法来获取选项标签的内容,包括文本和值?

1 个答案:

答案 0 :(得分:1)

我使用xpath来浏览html ...尝试:

options = doc.xpath("//select[@name='country']/option")
option_text = [option.text for option in options]