当前位置: 首页 > 知识库问答 >
问题:

Python在Linux的Windows子系统中找不到文件

唐泳
2023-03-14

我在WSL中使用Ubuntu环境中的python编写了一个脚本。

我在Windows中下载了Firebase的私钥“ServiceAccountKey.json”,然后将其移动到我在WSL中的工作目录中。(使用'mv mnt/c/users/yiu/downloads/serviceaccountkey.json~/projects/scrape')。现在,我正试图将该文件传递给Certificate(),但我得到一个file not found错误。

脚本:

import requests
from bs4 import BeautifulSoup
import firebase_admin
from firebase_admin import credentials, firestore

cred = credentials.Certificate("~/projects/scrape/serviceAccountKey.json")
firebase_admin.initialize_app(cred)
db = firestore.client()

我怎样才能摆脱文件找不到错误?

共有1个答案

周伟泽
2023-03-14

您需要设置绝对路径,因为中的~将因调用用户而不同

cred = credentials.Certificate("~/projects/scrape/serviceAccountKey.json")
 类似资料:
  • 我使用的是WSL(Windows Subsystem for Linux),版本是Ubuntu20.04 LTS。 显示错误: 我试过通过apt-get安装它,但没有安装候选。

  • 所以Linux的新windows子系统(2019年windows 4月10日发布)已经发布,我的ubuntu子系统也升级了。我应该能够打开我的windows资源管理器中的Linux文件夹,但我没有得到正确的文件夹时,我运行该命令。

  • 而现在又出现了新的情况。我有一个使用nightmare.js(改进了但类似于phantom.js)的项目,它将在运行时安装电子无头浏览器。在WSL中运行将安装Ubuntu版本的Electrone,当尝试运行时不会发生任何事情,浏览器将不会打开。这是合乎逻辑的,因为WSL Ubuntu没有可视化环境,因此无法在其中打开浏览器。 如果我使用PowerShell或CMD运行(将使用安装在Windows上

  • 虽然在windows上“原生地”运行Linux版本的python、pip等是令人惊奇的,但我想使用一个合适的IDE来实现。由于SSHD兼容性尚未实现,我正在尝试让PyCharm将Linux python识别为本地解释器。 安装Windows Linux子系统后,键入 但是对于我尝试的任何变体,我总是得到“sdk似乎无效”的说法。因为我不确定PyCharm到底在做什么来“验证”SDK,所以这很难克服

  • 我希望从VS2017调试一个Linux C++控制台应用程序,如以下教程所示: 使用Windows Subsystem For Linux在Visual Studio中编写和调试Linux C应用程序 从visual studio针对Linux的windows子系统 我已经在WSL Ubuntu 16.04安装中安装了gdbserver和openssh-server,正在运行,但是我无法从VS20

  • 问题内容: 当尝试在支持bash的最新Windows 10版本上使用Oracle JDK的Linux版本时,无论何时尝试调用二进制文件,我都遇到提示挂起的问题。 键入甚至挂起之类的简单内容,我也必须终止该过程以恢复控制。 有人在工作吗? 问题答案: 我想澄清一下,截至2016年12月9日,您肯定可以在Windows 10的Ubuntu Bash上安装Java 8,并且@Karl Horton是正确