我正在尝试解析html页面并从文本区域获取值,但我无法实现它,我将放置我的代码(我从selenium开始,但它也不起作用)。我不太明白这个值在 DOM 中的位置
所以该值在检查器中,但不在 html 代码中......我找不到获取它的方法。请有人帮我解释一下吗?谢谢!
#coding: utf8
import lxml.html as lh
import urllib.request
nb = 36893488147419103232
#x=0
#GRAB
#while x<=1: #A changer en fonction du nb de pages à crawl
url_base="https://bitcoin.oni.su/"+str(nb)#+x)
req = urllib.request.Request(url_base, headers={'User-Agent': 'Mozilla/5.0'})
doc=lh.parse(urllib.request.urlopen(req))
get_btc_adr = doc.xpath('//textarea[@id="BTCaddrC"]')
print(get_btc_adr, get_btc_adr[0].value)#Tried Value, text, element_Text()....
#x+=1
环顾四周并没有放弃后,我终于成功了,这是工作代码,以防有人遇到同样的情况:
#coding: utf8
from selenium import webdriver
nb = 36893488147419103232
x=0
driver = webdriver.Firefox()
#GRAB
while x<=1: #A changer en fonction du nb de pages à crawl
url_base="https://bitcoin.oni.su/"+str(nb+x)
driver.get(url_base)
btc_adr = driver.execute_script("return document.getElementById('BTCaddrC').value")
with open("result.txt","a") as f:
f.write(str(nb+x)+" "+btc_adr+"\n")
print(str(nb+x),btc_adr)
x+=1
感谢大家的帮助!