[英]python - xPath syntax for second occurence
<input name="utf8" type="hidden" value="✓" />
<input name="ohboy" type="hidden" value="I_WANT_THIS" />
<label for="user_email">Email</label>
<input class="form-control" id="user_email" name="user[email]" size="30" type="email" value="" />
我有點卡在這里,我本來打算使用find()而不是xpath(),因為標簽輸入在源代碼中的幾個地方,但是我發現find()僅返回源代碼中的第一個匹配項
使用find()
,傳遞xpath表達式,該表達式指定元素的整數索引:
from lxml.html import fromstring
html_data = """<input name="utf8" type="hidden" value="✓" />
<input name="ohboy" type="hidden" value="I_WANT_THIS" />
<label for="user_email">Email</label>
<input class="form-control" id="user_email" name="user[email]" size="30" type="email" value="" />"""
tree = fromstring(html_data)
print tree.find('.//input[2]').attrib['value']
打印:
I_WANT_THIS
但是,更好(更清潔)的方法是按名稱屬性查找輸入:
print tree.find('.//input[@name="ohboy"]').attrib['value']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.