FileNotFoundError:when trying to replace existing csv file
FileNotFoundError:when trying to replace existing csv file
我似乎无法将通常在另一个脚本中 运行 的代码正确地在新脚本中 运行 。在代码的末尾,它将查找并查看文件是否存在,如果存在,它将替换它并将下载的文件名更改为指定的文件名,但我一直收到错误消息。知道我可能遗漏了什么吗?
这是代码
database = "E:\Stock Database\Historical Data\Historical Stock List\"
chrome_options = webdriver.ChromeOptions()
prefs = {'download.default_directory': database}
chrome_options.add_experimental_option(name='prefs', value= prefs)
stocks = webdriver.Chrome(r"E:\Python Programs\chromedriver", chrome_options = chrome_options)
#Website
stocks.get(universe_data_site)
#Navigate Web Page
stocks.find_element_by_css_selector('#ui-id-4').click()
stocks.find_element_by_css_selector('#stocks > a.blue_button.factbutton').click()
stocks.find_element_by_css_selector('body > a:nth-child(3)').click()
#Download and renaiming of File
filename = 'allstocks.csv'
#removes existing file if already exists
if os.path.exists(r"%s%s"%(database,filename)) is True:
os.remove(r"%s%s"%(database,filename))
os.rename(r"%s"%database+ "stockfactsheet.csv ",r"%s%s"%(database,filename))
else:
os.rename(r"%s"%database+ "stockfactsheet.csv ",r"%s%s"%(database,filename))
这是我得到的错误
FileNotFoundError Traceback (most recent call last)
<ipython-input-51-6093fcfb1ff0> in <module>()
17 os.rename(r"%s"%database+ "stockfactsheet.csv",r"%s%s"%(database,filename))
18 else:
---> 19 os.rename(r"%s"%database+ "stockfactsheet.csv,r"%s%s"%(database,filename))
FileNotFoundError: [WinError 2] The system cannot find the file specified: 'E:\Stock Database\Historical Data\Historical Stock Liststockfactsheet.csv ' -> 'E:\Stock Database\Historical Data\Historical Stock Listallstocks.csv'
您的错误消息在父目录后没有 (a) 个反斜杠:
'E:\Stock Database\Historical Data\Historical Stock Liststockfactsheet.csv '
^
here
我认为这可能是由于 "stockfactsheet.csv" 行中缺少引号引起的:
os.rename(r"%s"%database+ "stockfactsheet.csv,r"%s%s"%(database,filename))
^
here
此外,stockfactsheet.csv
末尾有一个 space,这似乎是您第一次调用 os.rename
:
os.rename(r"%s"%database+ "stockfactsheet.csv ",r"%s%s"%(database,filename))
^
here
如果您没有使用带有上下文突出显示的 IDE(我会推荐 PyCharm),您真的应该这样做 - 一旦我的 IDE.
我似乎无法将通常在另一个脚本中 运行 的代码正确地在新脚本中 运行 。在代码的末尾,它将查找并查看文件是否存在,如果存在,它将替换它并将下载的文件名更改为指定的文件名,但我一直收到错误消息。知道我可能遗漏了什么吗?
这是代码
database = "E:\Stock Database\Historical Data\Historical Stock List\"
chrome_options = webdriver.ChromeOptions()
prefs = {'download.default_directory': database}
chrome_options.add_experimental_option(name='prefs', value= prefs)
stocks = webdriver.Chrome(r"E:\Python Programs\chromedriver", chrome_options = chrome_options)
#Website
stocks.get(universe_data_site)
#Navigate Web Page
stocks.find_element_by_css_selector('#ui-id-4').click()
stocks.find_element_by_css_selector('#stocks > a.blue_button.factbutton').click()
stocks.find_element_by_css_selector('body > a:nth-child(3)').click()
#Download and renaiming of File
filename = 'allstocks.csv'
#removes existing file if already exists
if os.path.exists(r"%s%s"%(database,filename)) is True:
os.remove(r"%s%s"%(database,filename))
os.rename(r"%s"%database+ "stockfactsheet.csv ",r"%s%s"%(database,filename))
else:
os.rename(r"%s"%database+ "stockfactsheet.csv ",r"%s%s"%(database,filename))
这是我得到的错误
FileNotFoundError Traceback (most recent call last)
<ipython-input-51-6093fcfb1ff0> in <module>()
17 os.rename(r"%s"%database+ "stockfactsheet.csv",r"%s%s"%(database,filename))
18 else:
---> 19 os.rename(r"%s"%database+ "stockfactsheet.csv,r"%s%s"%(database,filename))
FileNotFoundError: [WinError 2] The system cannot find the file specified: 'E:\Stock Database\Historical Data\Historical Stock Liststockfactsheet.csv ' -> 'E:\Stock Database\Historical Data\Historical Stock Listallstocks.csv'
您的错误消息在父目录后没有 (a) 个反斜杠:
'E:\Stock Database\Historical Data\Historical Stock Liststockfactsheet.csv '
^
here
我认为这可能是由于 "stockfactsheet.csv" 行中缺少引号引起的:
os.rename(r"%s"%database+ "stockfactsheet.csv,r"%s%s"%(database,filename))
^
here
此外,stockfactsheet.csv
末尾有一个 space,这似乎是您第一次调用 os.rename
:
os.rename(r"%s"%database+ "stockfactsheet.csv ",r"%s%s"%(database,filename))
^
here
如果您没有使用带有上下文突出显示的 IDE(我会推荐 PyCharm),您真的应该这样做 - 一旦我的 IDE.