2021年2月14日日曜日

Python WebDAV Client 3を使用してNextcloud上のファイルをコピーする(pipenv版)

Python WebDAV Client 3でNextcloudに接続して、ファイルをコピーする事が出来ます。

インストール手順(pipenvの場合)

1.pipenvのインストール
pipenvをインストール済みでない場合は、以下のコマンドでインストールします。
sudo dnf -y install python3

sudo pip3 install --upgrade pip

sudo pip3 install --upgrade setuptools

sudo pip3 install pipenv

echo "export PIPENV_VENV_IN_PROJECT=true" >> ~/.bashrc

source ~/.bashrc

2. webdav-client-python-3のインストール
以下のコマンドでwebdav-client-python-3をインストールした仮想環境を作成します
mkdir -p ~/webdav-client-python-3

cd ~/webdav-client-python-3

pipenv --python 3

pipenv install webdavclient3

pipenv shell

実行手順

WebDAVクライアントを使用してWebDAV上のファイルをコピーします。以下のサンプルプログラムを保存して、実行します。
from webdav3.client import Client

dav_user='test'
dav_password='testpassword'
dav_server='mynextcloud'
options = {
'webdav_hostname': "http://" + dav_server + "/nextcloud/remote.php/dav/files/" + dav_user + "/",
'webdav_login':    dav_user,
'webdav_password': dav_password
}
client = Client(options)
client.verify = False # To not check SSL certificates (Default = True)

# コンテンツのコピー
remotepath_from='Photos/Frog.jpg'
remotepath_to='Photos/Frog2.jpg'
client.copy(remotepath_from, remotepath_to)

関連情報

・Python WebDAV Client 3
https://github.com/ezhov-evgeny/webdav-client-python-3

・Nextcloudに関する他の情報は以下のまとめページを参照してください。
Nextcloudのまとめ

0 件のコメント:

コメントを投稿