[英]Python get value from input element with lxml xpath
我想要paypal cURL登錄,所以我需要auth值。 我嘗試使用此python代碼從html源獲取auth值
import requests
import lxml.html
import StringIO
from xml.etree.ElementTree import ElementTree
r = requests.get("https://paypal.com/cgi-bin/webscr?cmd=_login-run")
login_page = r.text.encode('utf-8') #printing html source
html = lxml.html.fromstring(login_page) #printing <Element html at 0x7f19cb242e$
auth = html.xpath('//input[@name="auth"]') #printing [<InputElement 7fb0971e9f1$
print auth
但是上面的代碼打印了這個[<InputElement 7fb0971e9f18 name='auth' type='hidden'>]
,所以我如何通過解碼- - .
獲取auth值- - .
- - .
? 輸入部分看起來像這樣
<input name="auth" type="hidden" value="ADPifNsidn-P0G6WmiMMeJbjEhnhIvZCNg7Fk11NUxc0DyYWzrH-xk5ydV.85WCzy">
非常感謝你。
如果您想要檢索該元素的auth
屬性,請使用
auth = html.xpath('//input[@name="auth"]/@value')
沒有必要解碼任何東西,當lxml解析HTML時,實體會自動擴展,因此輸出將是
$ python sample.py
['AmmyYuqCDmZRcSs6MaQi2tKhzZiyAX0eSERKqTi3pLB5pdceB726lx7jhXU2MGDN6']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.