网址:http://vip.stock.finance.sina.com.cn/corp/go.php/vCI_CorpManager/stockid/600900.phtml

在页面按f12打开开发者工具,在table标签上右键复制xpath

import xlwt
from selenium import webdriver

def main():
    # 网页链接
    url = "http://vip.stock.finance.sina.com.cn/corp/go.php/vCI_CorpManager/stockid/600900.phtml"
    # 文件存储路径和名字
    dirPath = "C:/Users/mcfly/Desktop/新道云/"
    dirName = "案例一.xls"
    # 表格xpath
    table1_xpath  ="//*[@id='comInfo1']"

    driver = webdriver.Chrome()
    driver.implicitly_wait(10)
    driver.get(url)
    # 把爬到的信息按行暂存在列表中
    data = []
    lst = []
    # 定位到表格
    table = driver.find_element_by_xpath(table1_xpath)
    # thead单独爬
    th_content = table.find_element_by_tag_name('thead').find_element_by_tag_name('tr').find_element_by_tag_name('th')
    lst.append( th_content.text )
    data.append( lst )
    # 遍历表格每一行,将内容存到列表中
    tr_contents = table.find_elements_by_tag_name('tr')
    for tr in tr_contents:
        td_contents = tr.find_elements_by_tag_name('td')
        lst = []
        for td in td_contents:
            lst.append(td.text)
        data.append(lst)
    print(data)
    # 创建表
    workbook = xlwt.Workbook(encoding='utf-8')
    # 创建sheet
    booksheet = workbook.add_sheet('Sheet 1', cell_overwrite_ok=True)
    # 存储路径
    filepath = dirPath + dirName
    row = len(data)
    col = len(lst)
    #将列表里的内容填到excel表格里,这里i从2开始是因为爬到的前两行是不需要的内容
    for i in range(2, row):
        for j in range(0, col):
            text = data[i][j]
            booksheet.write(i-2, j, text)
    # 保存到指定路径
    workbook.save(filepath)

if __name__ == '__main__':
    main()

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐