2017-04-19 25 views
0

私はckanウェブサイトを持っています。データストアにデータを手動でアップロードします。私の実際の要件は、プロセスを自動化することです。私はgeanjson、Excel、CSV、PDFなどのようなデータをckanアプリケーションに自動的にアップロードするジョブスケジューラが必要です。 入力ジョブスケジューラを使用してckanにデータを自動的にアップロード

おかげ

+0

自動化したい手動プロセスを記述してください。あなたのデータファイルが現在どこにあるか、それらをアップロードするために何をするのですか、新しいリソース、既存のものへの置き換え、または既存のものへの追加 –

+1

Add Datasetをクリックしてデータファイルをアップロードします。アップロードボタンをクリックしてください。私は定義された間隔ごとにデータをアップロードするスケジューラージョブによって自動的に実行したい。 – sss

答えて

0
あなたは ckanapiプログラムを使用してCKAN APIを呼び出してはbash(やPython)スクリプトを書くことができ

を提供してください。アクション機能create_packageを使用するか、おそらくはcreate_resourceを使用します。これは、それがそのためにメタデータを暗示するように定期的な自動化の事は、あなたはおそらく、新しいCKANデータセットを毎回追加したくない場合には

$ ckanapi resource_create package_id=my-dataset-with-files \ 
      [email protected]/path/to/file/to/upload.csv \ 
      url=dummy-value # ignored but required by CKAN<2.6 

:、ファイルをアップロードするなど、この例では、ckanapi's READMEでありますデータセットは毎回同じで、ユーザーには役に立たないと思われます。代わりに、毎回新しいリソースが必要になるでしょう。各データファイル間で変更された唯一のものが日付であり、他のすべてが同じであれば(目的、データ構造、収集方法、関係者)、単一のデータセットを作成することがより理にかなっており、その中のリソース。

+0

あなたのお返事ありがとうございます。私はPythonを知らないJavaのような他の言語でコードを書いたり、Ckan rest serviceを呼び出してアップロードしたりスケジュールしたりすることは可能ですか? – sss

+0

はい、ここに記載されているように、HTTPリクエストを行うだけです:http://docs.ckan.org/en/latest/maintaining/filestore.html#filestore-api –

関連する問題