• Stars
    star
    491
  • Rank 86,396 (Top 2 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created over 9 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Automate & manage your Pocket.com collection.

pockyt

A simple, yet powerful, commandline client for your Pocket collection.

image

image

About

Pocket is an application for managing a reading list of articles from the Internet.

pockyt is a commandline client that interfaces the pocket API and provides a way to interact with your Pocket collection. Using simple command sequences, routine tasks can be automated and reusable scripts can be created.

Privacy

pockyt does NOT track, store, or monitor your usage and/or data. Moreover, pockyt interacts with the pocket API using local credentials and does not attempt to communicate with any other services.

Installation

pockyt supports Python 2.7+ & 3.4+ on Windows, macOS, & GNU/Linux platforms.

  1. Install pockyt: pip install -U pockyt
  2. Connect Pocket account: pockyt reg
  3. Refer the Examples & Documentation below.

Examples

  • Get the latest 5 items' links & excerpts and save them to a file.

    pockyt get -n 5 -f '{link} - {excerpt}' -o readlater.txt
  • Get the oldest 10 items and delete them from Pocket.

    pockyt get -n 10 -r oldest -f '{id}' | pockyt mod -d -i redirect
  • Get all the items about 'python' and open them in a browser.

    pockyt get -q 'python' -o browser
  • Get all the links from a 'links.txt' and add them to Pocket.

    pockyt put -i links.txt
  • Get all favorited items and archive them.

    pockyt get -v 1 | pockyt mod -a 1 -i redirect
  • Get all favorited items and save offline copies of them.

    pockyt get -v 1 -a ./pocket

Contribute

Feel free to contribute features, bugfixes, improvements, and usage ideas.

  1. Fork pockyt.
  2. Work on the source code.

    git clone [email protected]:<username>/pockyt.git
    cd pockyt
    
    # runtime dependencies
    pip install -e .
    # devel dependencies
    pip install -r requirements.txt
    
    # do stuff
    git checkout -b new-feature
    
    # format files
    yapf -i -r .
    
    git add .
    git commit -am 'commit msg'
    git push origin new-feature
  3. Submit a pull request.

License

This project uses the GNU GPLv3 License.

Documentation

pockyt help/-h/--help :

help

show pockyt usage help

reg

connect a pocket account

get

get pocket collection, with useful item info

put

add to pocket collection, using links

mod

modify pocket collection, using item ids

pockyt reg -h :

-h, --help

show this help message and exit

--no-browser

use without browser i.e. print to console

pockyt get -h :

-h, --help

show this help message and exit

-c <type>, --content <type>

content type : <type> : {all, [article, video, image]}

-s <state>, --state <state>

collection state : <state> : {all, [unread, archive]}

-r <order>, --sort <order>

item sorting : <order> : {newest, [oldest, title, site]}

-n <amount>, --count <amount>

number of items : <amount> : {-1: all, [n: amount]}

-q <query>, --query <query>

search query : <query> : {None}

-t <option>, --tag <option>

filter tag : {-1: nofilter, [tagname: tagged, 0: untagged}

-v <option>, --favorite <option>

filter favorites : <option> : {-1: No Filter, [1: favorited, 0: un-favorited]}

-d <domain>, --domain <domain>

restrict items to domain : <domain> : {None}

-f <specifier>, --format <specifier>

format output : <specifier> : {'{id} | {title} | {link}', [id, title, link, excerpt, tags]}

-o <option>, --output <option>

redirect output : <option> : {None, [browser, filename]}

-a <path>, --archive <path>

save offline copies : <path> : path/to/archive/folder

--since <YYYY-MM-DD>

only return items modified since : <YYYY-MM-DD>

pockyt put -h :

-h, --help show this help message and exit -f <specifier>, --format <specifier> unformat input : <specifier> : {'{link}', [id, title, link, excerpt, tags]} -i <option>, --input <option> obtain input : <option> : {console, [redirect, link, filename]}

pockyt mod -h :

-h, --help show this help message and exit -f <specifier>, --format <specifier> unformat input : <specifier> : {'{id}', [id, title, link, excerpt, tags]} -i <option>, --input <option> obtain input : <option> : {console, [redirect, filename]} -d, --delete delete items -a <option>, --archive <option> archive items : <option> : {-1: None, [1: archive, 0: unarchive]} -v <option>, --favorite <option> favorite items : <option> : {-1: None, [1: favorite, 0: unfavorite]}