繁体   English   中英

使用selenium下载数据

[英]Download data using selenium

我是一名研究分析师,试图整理数据并进行分析。我需要这个页面的数据。 我需要研磨剂的数据到vanspati Oils(你会在左侧找到它)。 我总是遇到这样的问题,我发现selenium能够处理这些东西。 但我仍然坚持如何将这些数据下载到Excel中。 我需要为每个类别提供一张excel表。 我确切的技术问题是如何解决下载表数据的问题。我做了一些背景研究,并了解如果表具有class_name,则可以提取数据。 从这里开始 我看到该表有class="tbldata14 bdrtpg"所以我在我的代码中使用它。 我收到了这个错误

InvalidSelectorException:消息:给定的选择器tbldata14 bdrtpg无效或不会导致WebElement。

如何下载此表数据? 请指出我可以阅读并解决此问题的任何参考资料。 我的代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Firefox()

driver.get("http://www.moneycontrol.com/stocks/marketinfo/netprofit/bse/index.html")
elem=driver.find_element_by_class_name("tbldata14 bdrtpg")

在此先感谢。也请建议是否有另一种简单的方法[我尝试复制粘贴它太繁琐!]

获取您感兴趣的数据可以实现如下,

from selenium import webdriver

url = "http://www.moneycontrol.com/stocks/marketinfo/netprofit/bse/index.html"

# Get table-cells where the cell contains an anchor or text   
xpath = "//table[@class='tbldata14 bdrtpg']//tr//td[child::a|text()]"

driver = webdriver.Firefox()    
driver.get(url)
data = driver.find_elements_by_xpath(xpath)

# Group the output where each row contains 5 elements
rows=[data[x:x+5] for x in xrange(0, len(data), 5)]
for r in rows:
    print "Company {}, Last Price {}, Change {}, % Change {}, Net Profit {}" \
        .format(r[0].text, r[1].text, r[2].text, r[3].text, r[4].text)

这里解释了将数据写入excel文件,

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM