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

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

1. 运行效果

2. 主要代码如下:

  1. # 6.自动输入
  2.  
  3. def auto_input(self, filename, sheetname, client_row, code_col, start_row,
  4. end_row, start_col, end_col):
  5. df = pd.read_excel(filename, sheet_name=sheetname)
  6. values = df.head(5).values
  7. client_row = values[client_row - 2]
  8. rows = values[start_row - 2:]
  9. for row in rows:
  10. ok = auto.confirm("是否开始自动输入 " + str(row[code_col - 1]) + "?")
  11. if ok != "OK":
  12. break
  13. for i in range(end_col - start_col + 1):
  14. if 'nan' == str(row[i + start_col - 1]).lower(): continue
  15. auto.typewrite(str(client_row[i + start_col - 1]))
  16. auto.press("tab")
  17. time.sleep(1)
  18. auto.typewrite(str(row[i + start_col - 1]))
  19. auto.press("return")
  20. time.sleep(1)
  21. if __name__ == "__main__":
  22. h = FileUtil()
  23. filename = dirname(__file__) + "/book1.xlsx"
  24. h.auto_input(filename,
  25. sheetname="Sheet1",
  26. client_row=2,
  27. code_col=1,
  28. start_row=4,
  29. end_row=25,
  30. start_col=3,
  31. end_col=18)

View Code

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

版权声明:本文为china_x01原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/china_x01/p/12263148.html