Spis treści

Scribd_up - zbudowany na potrzebie skrypt do szybkiego, prostego wysyłania plików na 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~~

it/scribd_up.txt · ostatnio zmienione: 2014/07/10 18:54 przez naczelnik
Public Domain
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0