You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Colab中Selenium爬取的股票输出结果保存为Excel文件

Colab 雅虎财经爬取数据保存为Excel解决方法

你可以借助pandas库完成Excel导出,全程适配Colab运行环境,操作步骤如下:

步骤1:安装依赖库

在你的代码开头新增以下安装命令,确保导出Excel所需的依赖完备:

!pip install pandas openpyxl

步骤2:修改数据采集逻辑,存储结构化数据

不要直接打印采集到的数据,先将数据存入列表,最后统一导出,修改后的代码片段2如下:

import pandas as pd
from google.colab import files

lists = ["FBRX", "GNLN", "TISI"]
# 初始化空列表存储采集数据
stock_data = []

for stock_code in lists:
  url = f"https://finance.yahoo.com/quote/{stock_code}?p={stock_code}"
  wd.get(url)
  # 可选:如果新版Selenium报错,把find_element_by_xpath替换为find_element('xpath', 路径)
  EPS = wd.find_element_by_xpath('//*[@id="quote-summary"]/div[2]/table/tbody/tr[4]/td[2]/span').text
  AV = wd.find_element_by_xpath('//*[@id="quote-summary"]/div[1]/table/tbody/tr[8]/td[2]/span').text
  OYT = wd.find_element_by_xpath('//*[@id="quote-summary"]/div[2]/table/tbody/tr[8]/td[2]/span').text
  # 把单条数据加入列表
  stock_data.append([stock_code, EPS, AV, OYT])
  print(stock_code,EPS,AV,OYT)

# 转换为DataFrame,自定义列名
df = pd.DataFrame(stock_data, columns=['股票代码', '每股收益(EPS)', '平均成交量', '一年期目标价'])

# 导出为Excel文件,index=False表示不导出pandas默认的行索引
df.to_excel('雅虎财经股票指标.xlsx', index=False, engine='openpyxl')

# 可选:直接将生成的Excel下载到你的本地电脑
files.download('雅虎财经股票指标.xlsx')

可选优化建议

  • 如果需要在Excel中直接对数值做计算,可以在采集时处理掉数值中的千位分隔符,转换为数字类型:
    # 示例:把成交量转换为整数
    AV = int(wd.find_element_by_xpath('//*[@id="quote-summary"]/div[1]/table/tbody/tr[8]/td[2]/span').text.replace(',',''))
    
  • 若出现元素定位失效问题,可适当添加隐式等待避免页面未加载完成就采集数据:在初始化webdriver后添加wd.implicitly_wait(10)即可。

内容的提问来源于stack exchange,提问作者yeeping50

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 17:45:03