Zenodo: アーカイブの簡単なダウンロードURLをサポート

作成日 2018年10月23日  ·  4コメント  ·  ソース: zenodo/zenodo

現在、ダウンロードされたアーカイブのURLは間接的であり、ファイル名拡張子(wgetなど)は含まれていません。理想的には、コマンドラインのツールを使用してダウンロードするときにアーカイブのファイル名を保持する必要があります。 これを変更することは可能ですか?

最も参考になるコメント

@lnielsenに感謝します。 api / records / record_idのカールは、wget'ableURLをフェッチするために機能しました。 可能であれば、これらのwget'ableURLをサイトに直接表示すると便利です。

全てのコメント4件

報告していただきありがとうございます。 AFAIKこれはすでにサポートされています。 例:

$ wget https://zenodo.org/api/files/4f53dd1f-df5f-4a9c-8b46-6eacfc4b8840/results.zip
--2018-10-24 08:33:10--  https://zenodo.org/api/files/4f53dd1f-df5f-4a9c-8b46-6eacfc4b8840/results.zip
Resolving zenodo.org... 137.138.76.77
Connecting to zenodo.org|137.138.76.77|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 309980977 (296M) [application/octet-stream]
Saving to: 'results.zip'

そうでない例はありますか?

こんにちは@lnielsen

https://zenodo.org/record/51405
たとえば、このレコードには、次の形式のファイルが含まれています
https://zenodo.org/record/<record number>/files/<filename>?download=1
これはとは異なります
https://zenodo.org/api/files/<UID>/<filename>
上記のフォーマット。 @bbarkerのリクエストを参照すると、前者でwgetを使用することはできません。

これは私の側の無知かもしれません。 APIスタイルのパーマリンクを取得するために欠けている方法はありますか?

@benjaminhwilliamsどちらの場合も、ファイルを提供するのは同じコードですが、唯一の違いは、 https://zenodo.org/record/<record number>/files/<filename>?download=1に404ページなどのヒューマンエラーメッセージが表示されることです。

wget?download=1に関しては、私の意見でwgetの誤動作です。 ただし、 ?download=1を削除するだけで、$# wget $を満たすことができます。

wgetは、実際にはHTTPヘッダーで正しいファイル名を送信しているため、誤動作しています。 下記参照:

$ curl -I "https://zenodo.org/record/51405/files/l-cyst_01.tar.gz?download=1"
HTTP/1.1 200 OK
...
Content-Disposition: attachment; filename=l-cyst_01.tar.gz
...

とはいえ、自動ダウンロードが必要な場合は、直接ファイルリンクを取得するRESTAPIを使用することをお勧めします。

$ curl https://zenodo.org/api/records/51405
{
  ...
  "files": [
    {
      "bucket": "cbc7d513-2359-47fe-a9c6-f826de7776c5",
      "checksum": "md5:780a7b23320307ae8b6cf2d6e99ade1f",
      "key": "l-cyst_fast_04.tar.gz",
      "links": {
        "self": "https://zenodo.org/api/files/cbc7d513-2359-47fe-a9c6-f826de7776c5/l-cyst_fast_04.tar.gz"
      },
      "size": 140654635,
      "type": "gz"
    },
    {
      "bucket": "cbc7d513-2359-47fe-a9c6-f826de7776c5",
      "checksum": "md5:c04800ec8ffaaad867ee54a3a1688ac5",
      "key": "l-cyst_very_fast_01.tar.gz",
      "links": {
        "self": "https://zenodo.org/api/files/cbc7d513-2359-47fe-a9c6-f826de7776c5/l-cyst_very_fast_01.tar.gz"
      },
      "size": 63254814,
      "type": "gz"
    },
  ...
}

@lnielsenに感謝します。 api / records / record_idのカールは、wget'ableURLをフェッチするために機能しました。 可能であれば、これらのwget'ableURLをサイトに直接表示すると便利です。

このページは役に立ちましたか?
0 / 5 - 0 評価