0

我正在编写一个程序,我想为我的公司制作一个独立的程序。当我从 sublime text shell 运行它时,它运行得很好,除了一个我似乎无法解决的问题之外,我已经准备好了一切;涉及用户名的文件路径。有人对如何处理这个有任何建议吗?

一个例子是 wb.save(r'C:\Users******\Desktop\Excel.xlsx')

我想让 ****** 部分是自动的或输入框。

4

3 回答 3

0

os.getlogin() 会做

import os
path = os.path.join(r'C:\Users',os.getlogin(),'Desktop','Excel.xlsx')
print(path)
于 2018-07-31T15:24:23.913 回答
0

os.path.expanduser()在您想要主目录的位置与“~”一起使用:

import os
print(os.path.expanduser('~/Desktop/Excel.xlsx'))

或者使用 pathlib.Path:

from pathlib import Path
print(Path.home() / 'Desktop' / 'Excel.xlsx')
于 2018-07-31T15:29:01.020 回答
0

惊人的!看起来这很有效,但是当我将它作为一个独立的设备创建时,它现在又出现了另一个错误。

当我使用此代码从 shell 运行它时,Wait 最初有效,其中 EC 是预期的条件:

wait.until(EC.frame_to_be_available_and_switch_to_it(driver.find_element_by_name('AppBody')))   

每当我单独运行它时,都会出现以下错误:

Traceback (most recent call last):
  File "Stand_Alone_CAS_Automation", line 57, in <module>
NameError: name 'wait' is not defined
[17344] Failed to execute script Stand_Alone_CAS_Automation
于 2018-08-01T20:03:08.117 回答