2016-03-28 55 views
1

我试图从使用Python和Selenium的页面中提取一些文本文本对我来说是可见的,但我无法解决如何提取它 - 我认为文本是使用Java创建的。Python Selenium Web Scrapping - 隐藏文本/ Javascript?

我在网址“https://sellercentral.amazon.co.uk/hz/fba/profitabilitycalculator/index?lang=en_GB”上输入产品ID'B00FRJ1R4M',例如按下搜索,然后在亚马逊配送项目价格框中输入'20'并按下计算。

我试图提取'-5.59',但无济于事。

enter image description here

我想我得到的最接近是follwing代码:

cost = driver.find_element_by_xpath("//*[@id='afn-fees']/dl/dd[15]/input") 

print(cost.get_attribute('innerHTML')) 
print(driver.execute_script("return arguments[0].innerHTML", cost)) 

但这对于回报 '无'。

任何帮助将不胜感激。

回答

1

您需要使用.get_attribute("value"),因为这是一个input,并简化您的定位:

cost = driver.find_element_by_css_selector("input.cost-total") 
print(cost.get_attribute("value")) 

这里input.cost-total CSS选择器会匹配具有cost-totalinput元素,这是在这个非常可读的,可靠的定位案件。

+0

太棒了,非常感谢您的帮助。 – blountdj