cesiumlab.py 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. import os
  2. import time
  3. from selenium import webdriver
  4. from selenium.webdriver.common.by import By
  5. import pywinauto
  6. import pyautogui
  7. def main(root, file):
  8. browser = webdriver.Chrome()
  9. browser.maximize_window()
  10. browser.get('http://localhost:9003/index.html#/data/model')
  11. # 选择 通用模型切片
  12. time.sleep(2)
  13. browser.find_element(By.XPATH, '//*[@id="right_box"]/div/div[1]/ul/a[7]/li/button').click()
  14. time.sleep(2)
  15. # 选择输入文件 obj
  16. browser.find_element(By.XPATH, '//*[@id="input_button"]/button[1]').click()
  17. time.sleep(1)
  18. # 使用pywinauto来选择文件
  19. app = pywinauto.Desktop()
  20. # 选择文件上传的窗口
  21. dlg = app["打开"]
  22. # 选择文件地址输入框,点击激活
  23. # dlg["Toolbar3"].click()
  24. # 键盘输入上传文件的路径
  25. # send_keys(r"D:\osg\wenxingyuan\test\tyzzkcc001.obj")
  26. # 键盘输入回车,打开该路径
  27. # send_keys("{VK_RETURN}")
  28. # 选中文件名输入框,输入文件名
  29. dlg["文件名(&N):Edit"].type_keys(os.path.join(root, file))
  30. # dlg["文件名(&N):Edit"].type_keys(r'D:\osg\wenxingyuan\test\tyzzkcc001.obj')
  31. # 点击打开
  32. dlg["打开(&O)"].click()
  33. time.sleep(2)
  34. # obj设置取消翻转YZ
  35. browser.find_element(By.XPATH, '//*[@id="setting_general"]').click()
  36. time.sleep(2)
  37. input = browser.find_element(By.XPATH, '//*[@id="switch_style"]')
  38. time.sleep(2)
  39. if not input.is_selected():
  40. browser.find_element(By.XPATH,
  41. '//*[@id="all_right"]/div[3]/div/div/div[2]/div/div/div[3]/div[1]/div[1]').click()
  42. time.sleep(2)
  43. browser.find_element(By.XPATH, '//*[@id="all_right"]/div[3]/div/div/div[3]/button[2]').click()
  44. # 操作鼠标选择存储类型
  45. # 获取鼠标位置(x,y)
  46. # pyautogui.position()
  47. time.sleep(2)
  48. pyautogui.moveTo(2366, 958)
  49. pyautogui.click()
  50. time.sleep(2)
  51. pyautogui.moveTo(2368, 1037)
  52. pyautogui.click()
  53. time.sleep(2)
  54. # 数据存储
  55. browser.find_element(By.XPATH,
  56. '//*[@id="all_right"]/div[1]/div/div[16]/div/div[3]/div[4]/div[1]/button').click()
  57. app = pywinauto.Desktop()
  58. # 选择文件上传的窗口
  59. dlg = app["选择文件夹"]
  60. # print(dlg.print_control_identifiers())
  61. # 选择文件地址输入框,点击激活
  62. dlg["Toolbar3"].click()
  63. # 键盘输入上传文件的路径
  64. # send_keys(r"D:\osg\wenxingyuan\test\111")
  65. # 键盘输入回车,打开该路径
  66. # send_keys("{VK_RETURN}")
  67. # 选中文件名输入框,输入文件名
  68. if not os.path.exists(os.path.join(root, 'output', file.split('.')[0])):
  69. os.makedirs(os.path.join(root, 'output', file.split('.')[0]))
  70. time.sleep(3)
  71. dlg["文件夹:Edit"].type_keys(os.path.join(root, 'output', file.split('.')[0]))
  72. # 点击打开
  73. dlg["选择文件夹2"].click()
  74. time.sleep(1)
  75. # 提交处理
  76. browser.find_element(By.XPATH, '//*[@id="newfile_button"]/button').click()
  77. time.sleep(2)
  78. if __name__ == '__main__':
  79. input_path = r'D:\ty_data\obj输出\海尔学府'
  80. for root, dirs, files in os.walk(input_path):
  81. for file in files:
  82. if os.path.splitext(file)[-1] in ['.obj']:
  83. if file.split('.')[0] not in os.listdir(os.path.join(root, 'output')):
  84. main(root, file)