Scribd_up - zbudowany na potrzebie skrypt do szybkiego, prostego wysyłania plików na [[http://scribd.com|Scribd.com]], który pozwala łatwo, szybko i przyjemnie dzielić się plikami PDF. ====== Użycie ====== usage: scribd_up [-h] [-c CFG] [-p] [-s] filename [filename ...] positional arguments: filename Files to upload optional arguments: -h, --help show this help message and exit -c CFG, --config CFG config_file -p, --public Make docs public -s, --shortcode Output as shortcode ====== Konfiguracja ====== Pozyskujemy klucz API z http://pl.scribd.com/account-settings/api , a następnie tworzymy plik konfiguracyjny zapisując go w jednej z ścieżek: * $PWD/scribd_up.cfg * $HOME/.config/scribd_up.cfg" * wskazana przez parametr "-c" bazując na wzorze [api] key=XXXX secret=XXXX [user] login=adobrawy pass=XXXX ====== Kod ====== #!/usr/bin/python import scribd from sys import argv,stderr import ConfigParser from os.path import expanduser import argparse parser = argparse.ArgumentParser() parser.add_argument("-c", "--config", metavar="CFG", help="config_file", default=['scribd_up.cfg', expanduser('~/.config/scribd_up.cfg')]) parser.add_argument("-p", "--public", action="store_true", default=False, help="Make docs public",) parser.add_argument("-s","--shortcode", action="store_true",default=False, help="Output as shortcode",) parser.add_argument('filename', type=file, nargs='+', help="Files to upload") args =parser.parse_args() config = ConfigParser.ConfigParser() config.read(args.config) scribd.config(config.get('api','key'),config.get('api','secret')) user = scribd.login(config.get('user','login'), config.get('user','pass')) def upload(filename): access = "public" if args.public else "private" document = user.upload(filename, access=access,progress_callback=progress) document.save() return document def progress(bytes_sent, bytes_total): print >> stderr, "\r%s of %s (%s%%)" % (bytes_sent, bytes_total, bytes_sent*100/bytes_total), for filename in args.filename: doc = upload(filename) if args.shortcode: att = doc.get_attributes() text = "[scribd id=%s key=%s mode=scroll]" % (att['doc_id'],att['access_key']) else: text = doc.get_scribd_url() print "\r",filename.name, text ~~DISCUSSION~~