Openpyxl xlsx 结果是追加而不是覆盖

Openpyxl xlsx results are appending instead of overwriting

我正在使用 openpyxl 将结果写入 excel 文件。问题是当我第二次 运行 脚本时,结果出现在第一个结果的下面,而不是像我希望的那样覆盖它们。因此,目前第一个结果出现在第 2-151 行中,第二个结果附加在第 152-301 行中。我希望第二个结果覆盖第 2-151 行中的第一个结果。

有人知道这是否可以解决吗?

谢谢

from time import sleep
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException
import openpyxl
from openpyxl import load_workbook

url = 'http://www.tradingview.com/screener'
driver = webdriver.Firefox()
driver.get(url)

# will give a list of all tickers
tickers = driver.find_elements_by_css_selector('a.tv-screener__symbol')

wb = load_workbook('C:/Users/Jake/results.xlsx')
sheet = wb["Sheet2"]

for index in range(len(tickers)):
   row = [tickers[index].text]
   sheet.append(row)

wb.save('C:/Users/Jake/results.xlsx')

尝试在要覆盖的单元格中写入

sheet.cell(row=index, column=1).value = row

如果您不想从第一行开始写而是从第 2 行开始,只需使用

sheet.cell(row=index+2, column=1).value = row