Python Selenium - Запись таблицы данных в файл Excel - PullRequest
0 голосов
/ 28 мая 2020

Мне нужно записать таблицу данных в файл Excel. В этой таблице данных 7 строк и 1 столбец, и все значения различны. Моя проблема в том, что в файле excel записана только последняя строка.

Что мне нужно в excel:

FT 202003/69362
FT 202003/62581
FT 202003/41307
FT 202003/32316
FT 202003/4664
FT 201903/215090
FT 201903/197043

Что происходит в excel:

FT 201903/197043
FT 201903/197043
FT 201903/197043
FT 201903/197043
FT 201903/197043
FT 201903/197043
FT 201903/197043

Мой код :

faturas = driver.find_elements_by_xpath("//p[@class='text-description-small']//b[contains(text(),'FT')]")
    totalfaturas = len(faturas)
    for i in range(totalfaturas):
        fat = faturas[i].text
        print(fat)

    from openpyxl import *

    nf = load_workbook("C:\WebDrivers\Fatturas.xlsx")
    nf1 = nf.active
    for n in range(1, totalfaturas+1):
            nf1.cell(row=n,column=1).value=fat
            nf.save("C:\WebDrivers\Fatturas.xlsx")

Я могу напечатать правильную таблицу данных в python, но я не могу записать эту таблицу данных в excel. Не могли бы вы мне помочь?

1 Ответ

1 голос
/ 28 мая 2020

Измените это:

for i in range(totalfaturas):
    fat = faturas[i].text
    print(fat)

на:

fat_list=[]
for fat in faturas:
    fat_list.append(fat.text)
    #print(fat.text)

Затем измените это:

for n in range(1, totalfaturas+1):
        nf1.cell(row=n,column=1).value=fat
        nf.save("C:\WebDrivers\Fatturas.xlsx")

на:

for item in fat_list:
    nf1.cell(row=fat_list.index(item)+1,column=1).value=item
    nf.save("C:\WebDrivers\Fatturas.xlsx")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...