@@ -9,22 +9,22 @@ WebDAV-серверами (Яндекс.Диск, Dropbox, Google Диск, Box,
99resource API и wdc.
1010
1111Исходный код проекта можно посмотреть
12- `здесь <https://github.com/designerror/webdavclient >`_ |Github |
12+ `здесь <https://github.com/designerror/webdavclient >`__ |Github |
1313
1414Установка и обновление
1515======================
1616
1717**Установка **
1818
19- Linux
19+ Linux
2020
2121.. code :: bash
2222
2323 $ sudo apt-get install libxml2-dev libxslt-dev python-dev
2424 $ sudo apt-get install libcurl4-openssl-dev python-pycurl
2525 $ sudo easy_install webdavclient
2626
27- Mac OS X
27+ OS X
2828
2929 .. code :: bash
3030
@@ -94,159 +94,172 @@ unpublish.
9494
9595 **Синхронные методы **
9696
97- Проверка существования ресурса
98-
9997.. code :: python
10098
99+ // Проверка существования ресурса
100+
101101 client.check(" dir1/file1" )
102102 client.check(" dir1" )
103103
104- Получение информации о ресурсе
105-
106104 .. code :: python
107105
106+ // Получение информации о ресурсе
107+
108108 client.info(" dir1/file1" )
109109 client.info(" dir1/" )
110110
111- Проверка свободного места
112-
113111 .. code :: python
114112
115- free_size = client.free()
113+ // Проверка свободного места
116114
117- Получение списка ресурсов
115+ free_size = client.free()
118116
119117 .. code :: python
120118
119+ // Получение списка ресурсов
120+
121121 files1 = client.list()
122122 files2 = client.list(" dir1" )
123123
124- Создание директории
125-
126124 .. code :: python
127125
128- client.mkdir( " dir1/dir2 " )
126+ // Создание директории
129127
130- Удаление ресурса
128+ client.mkdir( " dir1/dir2 " )
131129
132130 .. code :: python
133131
134- client.clean( " dir1/dir2 " )
132+ // Удаление ресурса
135133
136- Копирование ресурса
134+ client.clean( " dir1/dir2 " )
137135
138136 .. code :: python
139137
138+ // Копирование ресурса
139+
140140 client.copy(remote_path_from = " dir1/file1" , remote_path_to = " dir2/file1" )
141141 client.copy(remote_path_from = " dir2" , remote_path_to = " dir3" )
142142
143- Перемещения ресурса
144-
145143 .. code :: python
146144
145+ // Перемещения ресурса
146+
147147 client.move(remote_path_from = " dir1/file1" , remote_path_to = " dir2/file1" )
148148 client.move(remote_path_from = " dir2" , remote_path_to = " dir3" )
149149
150- Загрузка ресурса
151-
152150 .. code :: python
153151
152+ // Перемещения ресурса
153+
154154 client.download_sync(remote_path = " dir1/file1" , local_path = " ~/Downloads/file1" )
155155 client.download_sync(remote_path = " dir1/dir2/" , local_path = " ~/Downloads/dir2/" )
156156
157- Выгрузка ресурса
158-
159157 .. code :: python
160158
159+ // Выгрузка ресурса
160+
161161 client.upload_sync(remote_path = " dir1/file1" , local_path = " ~/Documents/file1" )
162162 client.upload_sync(remote_path = " dir1/dir2/" , local_path = " ~/Documents/dir2/" )
163163
164- Публикация ресурса
165-
166164 .. code :: python
167165
166+ // Публикация ресурса
167+
168168 link = client.publish(" dir1/file1" )
169169 link = client.publish(" dir2" )
170170
171- Отмена публикации ресурса
172-
173171 .. code :: python
174172
173+ // Отмена публикации ресурса
174+
175175 client.unpublish(" dir1/file1" )
176176 client.unpublish(" dir2" )
177177
178- Обработка исключений
179-
180178 .. code :: python
181179
180+ // Обработка исключений
181+
182182 from webdav.client import WebDavException
183183 try :
184184 ...
185185 except WebDavException as exception:
186186 ...
187187
188- Получение недостающих файлов
189-
190188 .. code :: python
191189
192- client.pull( remote_directory = ' dir1 ' , local_directory = ' ~/Documents/dir1 ' )
190+ // Получение недостающих файлов
193191
194- Отправка недостающих файлов
192+ client.pull( remote_directory = ' dir1 ' , local_directory = ' ~/Documents/dir1 ' )
195193
196194 .. code :: python
197195
196+ // Отправка недостающих файлов
197+
198198 client.push(remote_directory = ' dir1' , local_directory = ' ~/Documents/dir1' )
199199
200200 **Асинхронные методы **
201201
202- Загрузка ресурса
203-
204202.. code :: python
205203
206- client.download_async(remote_path = " dir1/file1" , local_path = " ~/Downloads/file1" , callback = callback)
207- client.download_async(remote_path = " dir1/dir2/" , local_path = " ~/Downloads/dir2/" , callback = callback)
204+ // Загрузка ресурса
208205
209- Выгрузка ресурса
206+ kwargs = {
207+ ' remote_path' : " dir1/file1" ,
208+ ' local_path' : " ~/Downloads/file1" ,
209+ ' callback' : callback
210+ }
211+ client.download_async(** kwargs)
212+
213+ kwargs = {
214+ ' remote_path' : " dir1/dir2/" ,
215+ ' local_path' : " ~/Downloads/dir2/" ,
216+ ' callback' : callback
217+ }
218+ client.download_async(** kwargs)
210219
211220 .. code :: python
212221
213- client.upload_async(remote_path = " dir1/file1" , local_path = " ~/Documents/file1" , callback = callback)
214- client.upload_async(remote_path = " dir1/dir2/" , local_path = " ~/Documents/dir2/" , callback = callback)
222+ // Выгрузка ресурса
223+
224+ kwargs = {
225+ ' remote_path' : " dir1/file1" ,
226+ ' local_path' : " ~/Downloads/file1" ,
227+ ' callback' : callback
228+ }
229+ client.upload_async(** kwargs)
230+
231+ kwargs = {
232+ ' remote_path' : " dir1/dir2/" ,
233+ ' local_path' : " ~/Downloads/dir2/" ,
234+ ' callback' : callback
235+ }
236+ client.upload_async(** kwargs)
215237
216238 Resource API
217239============
218240
219241Resource API - используя концепцию ООП, обеспечивает работу с облачными
220242хранилищами на уровне ресурсов.
221243
222- Получение ресурса
223-
224244.. code :: python
225245
226- res1 = client.resource( " dir1/file1 " )
246+ // Получение ресурса
227247
228- Работа с ресурсом
248+ res1 = client.resource( " dir1/file1 " )
229249
230250 .. code :: python
231251
232- res1.rename( " file2 " )
252+ // Работа с ресурсом
233253
254+ res1.rename(" file2" )
234255 res1.move(" dir1/file2" )
235-
236256 res1.copy(" dir2/file1" )
237-
238257 info = res1.info()
239-
240258 res1.read_from(buffer)
241-
242259 res1.read(local_path = " ~/Documents/file1" )
243-
244260 res1.read_async(local_path = " ~/Documents/file1" , callback)
245-
246261 res1.write_to(buffer)
247-
248262 res1.write(local_path = " ~/Downloads/file1" )
249-
250263 res1.write_async(local_path = " ~/Downloads/file1" , callback)
251264
252265 wdc
@@ -259,13 +272,25 @@ WebDAV-серверами прямо из вашей консоли. Помим
259272
260273**Аутентификация **
261274
262- .. code :: bash
275+ - *Basic-аутентификация *
276+
277+ .. code :: bash
278+
279+ $ wdc login https://wedbav.server.ru -p http://127.0.0.1:8080
280+ webdav_login: w_login
281+ webdav_password: w_password
282+ proxy_login: p_login
283+ proxy_password: p_password
284+ success
263285
264- $ wdc login https://wedbav.server.ru -p http://127.0.0.1:8080
265- webdav_login: w_login
266- webdav_password: w_password
267- proxy_login: p_login
268- proxy_password: p_password
286+ - *Авторизация приложения с помощью OAuth-токена *
287+
288+ .. code :: bash
289+
290+ $ wdc login https://wedbav.server.ru -p http://127.0.0.1:8080 --token xxxxxxxxxxxxxxxxxx
291+ proxy_login: p_login
292+ proxy_password: p_password
293+ success
269294
270295 Также имеются дополнительные ключи ``--root[-r] ``, ``--cert-path[-c] `` и
271296``--key-path[-k] ``.
@@ -314,24 +339,24 @@ WevDAV можно отнести Яндекс.Диск, Dropbox, Google Диск
314339Развернуть локальный WebDAV-сервер, с использование Docker-контейнеров
315340довольно легко и быстро. Ознакомиться с примером развертывания
316341локального WebDAV-сервера можно на проекте
317- `Webdavserver <https://github.com/designerror/webdavserver >`_ .
342+ `webdav-server-docker <https://github.com/designerror/webdav-server-docker >`__ .
318343
319344**Поддерживаемые методы **
320345
321346+----------------+--------+--------+--------+---------+---------+--------+--------+------------+----------+
322347| Сервиры | free | info | list | mkdir | clean | copy | move | download | upload |
323348+================+========+========+========+=========+=========+========+========+============+==========+
324- | Яндекс.Диск | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ |
349+ | Яндекс.Диск | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ |
325350+----------------+--------+--------+--------+---------+---------+--------+--------+------------+----------+
326- | Dropbox | \- | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ |
351+ | Dropbox | \- | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ |
327352+----------------+--------+--------+--------+---------+---------+--------+--------+------------+----------+
328- | Google Диск | \- | \+ | \+ | \+ | \+ | \- | \- | \+ | \+ |
353+ | Google Диск | \- | \+ | \+ | \+ | \+ | \- | \- | \+ | \+ |
329354+----------------+--------+--------+--------+---------+---------+--------+--------+------------+----------+
330- | Box | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ |
355+ | Box | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ | \+ |
331356+----------------+--------+--------+--------+---------+---------+--------+--------+------------+----------+
332- | 4shared | \- | \+ | \+ | \+ | \+ | \- | \- | \+ | \+ |
357+ | 4shared | \- | \+ | \+ | \+ | \+ | \- | \- | \+ | \+ |
333358+----------------+--------+--------+--------+---------+---------+--------+--------+------------+----------+
334- | Webdavserver | \- | \+ | \+ | \+ | \+ | \- | \- | \+ | \+ |
359+ | Webdavserver | \- | \+ | \+ | \+ | \+ | \- | \- | \+ | \+ |
335360+----------------+--------+--------+--------+---------+---------+--------+--------+------------+----------+
336361
337362Методы publish и unpublish поддерживает только Яндекс.Диск.
@@ -344,14 +369,14 @@ WebDAV необходимо использовать WebDAV-сервера DropD
344369
345370Список настроек для WebDAV - серверов:
346371
347- .. code :: python
372+ .. code :: yml
348373
349374 webdav-servers:
350- - yandex:
375+ - yandex
351376 hostname: https://webdav.yandex.ru
352377 login: #login_for_yandex
353378 password: #pass_for_yandex
354- - dropbox:
379+ - dropbox
355380 hostname: https://dav.dropdav.com
356381 login: #login_for dropdav
357382 password: #pass_for_dropdav
@@ -360,20 +385,20 @@ WebDAV необходимо использовать WebDAV-сервера DropD
360385 root: docso
361386 login: #login_for_dav-pocket
362387 password: #pass_for_dav-pocket
363- - box:
388+ - box
364389 hostname: https://dav.box.com
365390 root: dav
366391 login: #login_for_box
367392 password: #pass_for_box
368- - 4shared :
393+ - 4shared
369394 hostname: https://webdav.4shared.com
370395 login: #login_for_4shared
371396 password: #pass_for_4shared
372397
373398 Автодополнение
374399==============
375400
376- Для Mac OS X или старых Unix-систем необходимо обновить bash.
401+ Для OS X или старых Unix-систем необходимо обновить bash.
377402
378403.. code :: bash
379404
@@ -397,7 +422,7 @@ WebDAV необходимо использовать WebDAV-сервера DropD
397422 Благодарности
398423=============
399424
400- Спасибо компании\ ``jetBrains `` за
425+ Спасибо компании\ ``JetBrains `` за
401426
402427|PyCharm |
403428
@@ -407,10 +432,6 @@ WebDAV необходимо использовать WebDAV-сервера DropD
407432 :target: https://requires.io/github/designerror/webdav-client-python/requirements/?branch=master&style=flat
408433.. |PullReview stats | image :: https://www.pullreview.com/github/designerror/webdavclient/badges/master.svg?
409434 :target: https://www.pullreview.com/github/designerror/webdavclient/reviews/master
410- .. |Supported Python versions | image :: https://pypip.in/py_versions/webdavclient/badge.svg
411- :target: https://pypi.python.org/pypi/webdavclient/
412- .. |License | image :: https://pypip.in/license/webdavclient/badge.svg
413- :target: https://pypi.python.org/pypi/webdavclient/
414435.. |Github | image :: https://github.com/favicon.ico
415436.. |PyCharm | image :: http://s28.postimg.org/o1td9nf3t/rsz_intellij_pycharm.png
416437 :target: https://www.jetbrains.com/pycharm/
0 commit comments