【问题标题】:Installing OSMnx with Anaconda使用 Anaconda 安装 OSMnx
【发布时间】:2020-05-05 06:04:02
【问题描述】:

我正在尝试按照https://geoffboeing.com/2017/02/python-getting-started/ 中列出的步骤在我的计算机上安装 Python 3 中的 osmnx 包。步骤是:

  1. 下载 miniconda,路径为C:\Anaconda。我无法做到这一点,因为我正在使用大学计算机。但是,Anaconda 已经安装在这些计算机上,路径为 C:\Program Files \Anaconda3
  2. 在 Anaconda Prompt 中,我尝试了 conda update -n base conda。但是,这并没有通过,因为我没有“目标环境的写入权限”(C:\Program Files \Anaconda3)。
  3. 我忽略了这个错误,假设 conda 是最新的。 conda config --prepend channels conda-forge 运行良好。
  4. conda create -n ox -c conda-forge osmnx jupyterlabconda activate ox 运行良好。 OSMnx 和 jupyterlab 在 Anaconda Navigator>Environments>ox>installed 中列出。
  5. 在ox环境中,我跑了jupyter lab,但是这给出了以下错误。对于这么大的引用,我很抱歉,但我不知道如何解释:
(ox) C:\Users\bm17652>jupyter lab
[I 15:47:48.265 LabApp] Writing notebook server cookie secret to C:\Users\bm17652\AppData\Roaming\jupyter\runtime\notebook_cookie_secret
Traceback (most recent call last):
  File "C:\Users\bm17652\.conda\envs\ox\Scripts\jupyter-lab-script.py", line 9, in <module>
    sys.exit(main())
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\jupyter_core\application.py", line 268, in launch_instance
    return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\traitlets\config\application.py", line 663, in launch_instance
    app.initialize(argv)
  File "<C:\Users\bm17652\.conda\envs\ox\lib\site-packages\decorator.py:decorator-gen-7>", line 2, in initialize
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\traitlets\config\application.py", line 87, in catch_config_error
    return method(app, *args, **kwargs)
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\notebook\notebookapp.py", line 1679, in initialize
    self.init_webapp()
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\jupyterlab\labapp.py", line 404, in init_webapp
    super().init_webapp(*args, **kwargs)
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\notebook\notebookapp.py", line 1442, in init_webapp
    self.http_server.listen(port, self.ip)
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\tornado\tcpserver.py", line 152, in listen
    self.add_sockets(sockets)
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\tornado\tcpserver.py", line 165, in add_sockets
    self._handlers[sock.fileno()] = add_accept_handler(
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\tornado\netutil.py", line 279, in add_accept_handler
    io_loop.add_handler(sock, accept_handler, IOLoop.READ)
  File "C:\Users\bm17652\.conda\envs\ox\lib\site-packages\tornado\platform\asyncio.py", line 99, in add_handler
    self.asyncio_loop.add_reader(fd, self._handle_events, fd, IOLoop.READ)
  File "C:\Users\bm17652\.conda\envs\ox\lib\asyncio\events.py", line 501, in add_reader
    raise NotImplementedError
NotImplementedError

当我尝试从 Anaconda Navigator 打开 Jupyter Lab 并运行 import osmnx as ox 时,我收到错误“No module named 'osmnx'”。

在我看来,Jupyter Lab 似乎没有正确安装,或者与 osmnx 没有正确连接。 出现这些错误是因为:

  • 我还没有更新 conda?
  • 我运行代码的目录 (C:\Users\bm17652) 与 Anaconda 所在的目录 (C:\Program Files \Anaconda3) 不同?
  • 我应该将 Anaconda 下载到其他路径吗?

【问题讨论】:

标签: python anaconda jupyter conda osmnx


【解决方案1】:

我遇到了类似的问题。解决方案是为 OSMnx 创建一个新的完整环境。这可以使用

conda config --prepend channels conda-forge
conda create -n ox --strict-channel-priority osmnx

然后您必须使用以下方法激活该环境:

(base) C:\Users\User>conda activate ox

之后你可以运行:

(ox) C:\Users\User>python
>>> import osmnx as ox
>>>

测试是否安装成功

【讨论】:

    【解决方案2】:

    我先conda install osmnx 然后conda install gdal=2.4.4 就可以了!!!

    感谢这里的链接 >>> fiona import issues in python

    【讨论】:

      猜你喜欢
      • 2019-11-09
      • 2021-02-07
      • 2013-11-07
      • 2014-09-29
      • 2020-03-06
      • 2019-06-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多