在 Julia 的 Jupyter Notebook 上从 GitHub 下载文件时出现 Failed proccess 错误
Posted
技术标签:
【中文标题】在 Julia 的 Jupyter Notebook 上从 GitHub 下载文件时出现 Failed proccess 错误【英文标题】:Failed proccess error when downloading file from GitHub on Jupyter Notebook in Julia 【发布时间】:2019-06-21 10:17:45 【问题描述】:我正在尝试使用 Jupyter Notebook 中的 Julia 从 GitHub 下载文件:
isfile("housing.data") ||
download("https://raw.githubusercontent.com/MikeInnes/notebooks/master/housing.data",
"housing.data")
rawdata = readdlm("housing.data")'
我有 Windows 和 Julia v1.1.1 版本。我收到一条对我没有任何意义的错误消息:
failed process: Process(`'C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe' -Version 3 -NoProfile -Command "[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12; (New-Object System.Net.Webclient).DownloadFile('https://raw.githubusercontent.com/MikeInnes/notebooks/master/housing.data', 'housing.data')"`, ProcessExited(3221225477)) [3221225477]
Stacktrace:
[1] error(::String, ::Base.Process, ::String, ::Int64, ::String) at .\error.jl:42
[2] pipeline_error at .\process.jl:785 [inlined]
[3] download(::String, ::String) at .\download.jl:20
[4] top-level scope at In[3]:1
我尝试用谷歌搜索该消息,但它太长了,找不到任何东西,我没有找到任何有此类问题的相关主题。这个错误的原因可能是什么?我需要向您提供一些其他信息吗?
【问题讨论】:
命令本身在我的机器上运行正常。您能否检查一下您是否在管理级别上没有问题(例如:互联网访问限制、目录读/写限制等)。也许尝试在另一台机器上运行此代码。 重新安装 Julia 似乎可以解决问题。 你用的是哪个windows版本? 【参考方案1】:Base.download
依赖于系统命令的可用性和配置。特别是其文档内容如下:
"此功能依赖于 curl、wget 或 fetch 等外部工具的可用性来下载文件并提供方便。对于生产使用或需要更多选项的情况,请使用提供所需的包代替功能。”
遵循此建议,您应该这样做:
using Pkg
Pkg.add("HTTP")
using HTTP
HTTP.download("https://raw.githubusercontent.com/MikeInnes/notebooks/master/housing.data", "housing.data")
通过这种方式,您可以使用纯 Julia 来下载文件,而不是使用各种系统工具,并保持跨平台代码的同质行为。
【讨论】:
以上是关于在 Julia 的 Jupyter Notebook 上从 GitHub 下载文件时出现 Failed proccess 错误的主要内容,如果未能解决你的问题,请参考以下文章
为 Jupyter 笔记本调整 Julia 内核中的绘图大小