x01.auto_input: 自动输入

单位经常要把 excel 表的数据录入系统中,能够自动录入该多好。

花了几天时间,学习了一下 pandas 操作 excel 数据,利用 pyautogui 完成了一个自动录入的小测试,希望对有此需求的人有帮助。

1. 运行效果

2. 主要代码如下:

 # 6.自动输入

    def auto_input(self, filename, sheetname, client_row, code_col, start_row,
                   end_row, start_col, end_col):
        df = pd.read_excel(filename, sheet_name=sheetname)
        values = df.head(5).values
        client_row = values[client_row - 2]
        rows = values[start_row - 2:]
        for row in rows:
            ok = auto.confirm("是否开始自动输入 " + str(row[code_col - 1]) + "?")
            if ok != "OK":
                break
            for i in range(end_col - start_col + 1):
                if 'nan' == str(row[i + start_col - 1]).lower(): continue
                auto.typewrite(str(client_row[i + start_col - 1]))
                auto.press("tab")
                time.sleep(1)
                auto.typewrite(str(row[i + start_col - 1]))
                auto.press("return")
                time.sleep(1)


if __name__ == "__main__":
    h = FileUtil()
    filename = dirname(__file__) + "/book1.xlsx"
    h.auto_input(filename,
                 sheetname="Sheet1",
                 client_row=2,
                 code_col=1,
                 start_row=4,
                 end_row=25,
                 start_col=3,
                 end_col=18)
View Code

3. 码云链接: https://gitee.com/chinax01/x01.lab

posted on 2020-02-05 12:11  x01  阅读(511)  评论(0编辑  收藏  举报

导航