4

我正在寻找“分类”到 Python 脚本中的特定别名恰好是使用 cUrl -o(输出到文件)选项的别名。我想我可以很容易地把它变成一个 BASH 函数,但是有人建议我可以通过接受我的想法并将它们制作成 Python 脚本来避免 BASH 的不同版本和“风格”的怪癖和陷阱。

与这个想法一致的是另一个想法,我必须制作与下载平台无关的遗留 Mac OS(官方称为“OS 9”或“Classic”)的功能:将 URL 写入文件中可见的文件的某些部分导航器 {Konqueror、Dolphin、Nautilus、Finder 或 Explorer}。我知道使用其他一些命令行工具(exiv2、wrjpgcom 等),只有很少的文件类型支持这种事情。这对我来说非常好,因为我只使用这个别名来下载单页图像文件,比如 JPEG。

我认为我不妨充分利用 Python 的强大功能,让脚本将作为下载源 URL 的字符串(由用户输入并首先由 cUrl 使用)传递给 exiv2 之类的东西,它可以将其写入注释块、EXIF 用户注释块和(作为第一个也是最差的示例)Windows XP 的文件描述字段。从小处着手有时是一个很好的开始方式。

希望有人有意见或建议。

BZT

4

2 回答 2

17

Bash 手册中的相关部分指出:

当字符串用作简单命令的第一个单词时,别名允许将字符串替换为单词。

所以,应该没有什么能阻止你做例如

$ alias geturl="python /some/cool/script.py"

然后你可以像使用任何其他 shell 命令一样使用它:

$ geturl http://example.com/excitingstuff.jpg

这只会调用你的 Python 程序。

于 2010-02-17T10:33:17.840 回答
0

我认为 Pycurl 可能是答案。Ahh Daniel Sternberg 和他无辜的假设,即每个人都知道他在做什么。我在列表中询问 pycurl 是否有“curl -o”类似物,然后问“如果有:如何在 Python 脚本中对其/它们进行编码?” 他的回复如下:

“curl.setopt(pycurl.WRITEDATA, fp)

可能结合:

curl.setopt(pycurl.WRITEFUNCITON, callback) "

...连同指向两个版本的retriever.py 的Sourceforge 链接。我几乎不记得easy_install 把我的那个放在哪里了;我应该如何比较它们?

很明显,这位先生在西半球从未从事过服务台或电话技术支持工作,您必须假设“客户”昨天刚刚学会了如何使用他们的梳子,并准备好引导他们完成所有事情。单行(或带有作为追逐者的深奥链接的三行)不适合我。

BZT

于 2010-02-20T11:15:51.663 回答