【发布时间】:2019-05-16 05:14:01
【问题描述】:
这是我第一次尝试用硒刮。
我收集了我想要的东西,但我想将它传递给 pandas 数据框以便进行一些计算。
下面的示例代码是我获取数据的方式;
(为财务数据,[2]、[3]分别代表年份(2016、2017))
nf1 = driver.find_element_by_xpath('//*[@id="tbodyMTablo"]/tr[84]/td[2]').text
nf2 = driver.find_element_by_xpath('//*[@id="tbodyMTablo"]/tr[84]/td[3]').text
do_v1 = driver.find_element_by_xpath('//*[@id="tbodyMTablo"]/tr[2]/td[2]').text
do_v2 = driver.find_element_by_xpath('//*[@id="tbodyMTablo"]/tr[2]/td[3]').text
kvb_1 = driver.find_element_by_xpath('//*[@id="tbodyMTablo"]/tr[29]/td[2]').text
kvb_2 = driver.find_element_by_xpath('//*[@id="tbodyMTablo"]/tr[29]/td[3]').text
这是一个数字数据,但存储为 str(可能是因为 .text)和 int(nf2) 或 float(nf2)不起作用。
有什么方法可以首先存储为值吗?
(没有.text它返回0)
抓取数值数据并将其存储在数据框中的正确方法是什么?
提前致谢。
【问题讨论】:
-
在您的方法返回的 WebElement 的 .text 属性上调用 float() 或 int()。
标签: python pandas selenium web-scraping