首页 > 解决方案 > Python3 openpyxl 从动态 web 表附加到 excel 文件

问题描述

我正在尝试自动化我的一些日常工作量。我需要将每日销售数据输入到销售代表组织的 Excel 电子表格中。

这是我正在抓取的表格的图片: Dynamic Web Table 在此处输入图像描述

这是我当前程序附加到 excel 的图片: 当前正在执行的代码 在此处输入图像描述 我正在使用的当前 for 循环是:

sales_people = ["Domenic", "DEBORA DA SILVA", "Giulio", "Mike", "RONNIE MUKHERJI", "Sergio Sturino"]
for row in range(1, row_length + 1):
    sales_person_daily = browser.find_element_by_xpath("/html/body/table/tbody/tr[3]/td/table[3]/tbody/tr["+str(row)+"]/td[1]").text
    if sales_person_daily in sales_people:
        sales_amount = browser.find_element_by_xpath("/html/body/table/tbody/tr[3]/td/table[3]/tbody/tr["+str(row)+"]/td[5]").text
        sheet.cell(row=row + 1, column=num + 1, value=sales_amount)
    else:
        sheet.cell(row=row + 1, column=num + 1, value=0)

问题是因为表格每天都在变化(并非所有销售代表每天都销售),数据数字没有分配到正确的单元格。

上面的代码完美地提取了我需要的所有数据,问题是将其组织在适当的单元格中。

如果不使用几个嵌套的 for 循环,我想不出办法来做到这一点。有没有更简单的方法?如果这个问题没有正确发布,我深表歉意,这是我在这个网站上的第一个问题。

如果需要更多信息,请告诉我,我会发布。

提前致谢!

标签: python-3.xexcelseleniumopenpyxl

解决方案


推荐阅读