Giter VIP home page Giter VIP logo

dropbox-via-webdav's Introduction

Dropbox via WebDAV

Access your Dropbox via WebDAV interface

Installation

  • Clone the repository:

    git clone https://github.com/Perlence/dropbox-via-webdav.git
    cd dropbox-via-webdav
  • Create and activate virtual environment:

    $ virtualenv env
    $ . env/bin/activate
  • Install requirements:

    $ pip install -r requirements.txt
  • Install the package:

    $ python setup.py install

Configuration

  • Create a Dropbox application with full access.

    • Go to App Console.

    • Select Dropbox API app.

    • Select Files and datastores.

    • Select No โ€” My app needs access to files already on Dropbox.

    • Select All โ€” file types My app needs access to a user's full Dropbox. Only supported via the Core API.

    • Provide an app name.

    • Create Create app.

    • Copy App key and App secret.

  • Create a copy of default.json and name it config.json.

  • Put App key and App secret to CONSUMER_KEY and CONSUMER_SECRET respectively.

  • Start get-access-token and follow the instructions.

Serving

After config.json is filled with consumer key, consumer secret, and access tokens, start:

$ wsgidav

An HTTP server starts and listens to http://localhost:8080 (configurable from wsgidav.conf).

dropbox-via-webdav's People

Contributors

perlence avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

dropbox-via-webdav's Issues

Does not install anymore

It looks like WsgiDAV==1.1.0 only works with python 2, and requires python to be set to python2

$ pip install -r requirements.txt 
Collecting arrow==0.5.0
  Using cached arrow-0.5.0.tar.gz (78 kB)
Collecting dropbox==2.2.0
  Using cached dropbox-2.2.0.zip (691 kB)
Collecting python-dateutil==2.4.0
  Using cached python_dateutil-2.4.0-py2.py3-none-any.whl (175 kB)
Collecting six==1.9.0
  Using cached six-1.9.0-py2.py3-none-any.whl (10 kB)
Collecting urllib3==1.10
  Using cached urllib3-1.10.tar.gz (128 kB)
Collecting WsgiDAV==1.1.0
  Using cached WsgiDAV-1.1.0.zip (206 kB)
    ERROR: Command errored out with exit status 1:
     command: /media/raffaele/DATA/progetti_altrui/dropbox-via-webdav/env/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-_wpz7_f2/wsgidav_572874a89dc74fd881e0989c20f3d121/setup.py'"'"'; __file__='"'"'/tmp/pip-install-_wpz7_f2/wsgidav_572874a89dc74fd881e0989c20f3d121/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-yw8aleq1
         cwd: /tmp/pip-install-_wpz7_f2/wsgidav_572874a89dc74fd881e0989c20f3d121/
    Complete output (6 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-_wpz7_f2/wsgidav_572874a89dc74fd881e0989c20f3d121/setup.py", line 17
        print "Initializing HOME environment variable to '%s'" % os.environ["HOME"]
              ^
    SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Initializing HOME environment variable to '%s'" % os.environ["HOME"])?
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
WARNING: You are using pip version 20.3.3; however, version 21.0.1 is available.
You should consider upgrading via the '/media/raffaele/DATA/progetti_altrui/dropbox-via-webdav/env/bin/python -m pip install --upgrade pip' command.

Is this currently working/live?

Hi Perlence, are you using this currently? Do you know if it currently works? I see the last commit is 3 years ago and things may have changed on several fronts.

'module' object has no attribute 'ACCESS_TOKENS'

Hi,
do anybody use this client already? I wand to use this together with my home server & router, to provide a dropbox in our local network.
I started this with a test session on a RasPi. During this session I run in troubles. I could realise all points of the readme.md but starting the wsgidav isn't possible. I already run in problems with the config file.

Failed to read configuration file: /home/pi/Downloads/dropbox-via-webdav/wsgidav.conf
Due to AttributeError: 'module' object has no attribute 'ACCESS_TOKENS'

Traceback (most recent call last):
File "/usr/local/bin/wsgidav", line 11, in
load_entry_point('WsgiDAV==1.1.0', 'console_scripts', 'wsgidav')()
File "/home/pi/.local/lib/python2.7/site-packages/wsgidav/server/run_server.py", line 506, in run
config = _initConfig()
File "/home/pi/.local/lib/python2.7/site-packages/wsgidav/server/run_server.py", line 222, in _initConfig
fileConf = _readConfigFile(config_file, temp_verbose)
File "/home/pi/.local/lib/python2.7/site-packages/wsgidav/server/run_server.py", line 182, in _readConfigFile
configmodule = imp.load_source("configuration_module", config_file)
File "/home/pi/Downloads/dropbox-via-webdav/wsgidav.conf", line 121, in
for shareName, accessToken in config.ACCESS_TOKENS.items():
AttributeError: 'module' object has no attribute 'ACCESS_TOKENS'

I also saw this effect with the others attributes CONSUMER_KEY & CONSUMER_SECRET during a short test. The config.py & config.json file are in the same directory as wsgidav.conf.

Any ideas why this stops with errors? thx

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.