答案1
这似乎是 GTK+ 的一个限制。您无法强制其文件选择器执行它目前无法执行的操作。任何使用 GTK+ 文件选择器小部件的应用程序都会遇到同样的问题。
但是使用 Qt 等效的应用程序(以及所有 KDE 应用程序和许多其他应用程序),能直接从 HTTP 链接打开。我已经在 Kate 中测试过了。
我不确定您想要什么解决方案。您可能需要花一些时间将其破解到相关的 GTK 库中,以便将来可以像这样运行。然后您可以将其提交给上游,它最终将成为默认设置(如果被接受)。
但更快捷的方法是:
- 使用使用 QT 的应用程序(或其他执行此操作的框架)
- 寻找另一个工作流程。
在浏览器环境中,我测试过的浏览器(包括基于 GTK 和 Qt 小部件的浏览器)都无法打开远程 URI 来选择文件。
正如前面提到的,Qt 是技术上可以做到这一点,但在 Rekonq(我测试的 Qt 浏览器)中,它似乎仅限于本地文件。这可能是可以解决的问题。对于 GTK+ 浏览器(大多数),需要在 GTK 上进行工作才能工作。
简而言之,在浏览器中修复这个问题对于任何人来说都是不切实际的。
也就是说你也许能够创建基于 FUSE 的文件系统它从剪贴板读取并提供一个包含一个文件的虚假文件系统(然后使用类似python-requests
库的东西从 URL 流式传输数据)。
然后您只需在浏览器中选择该文件,它就会像任何其他文件一样工作。
这不是一个小项目(因此缺少代码)但对于具有一点 Python 经验的人来说是可以实现的。