A simple, yet powerful, commandline client for your Pocket collection.
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.
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.
pockyt supports Python 2.7+ & 3.4+ on Windows, macOS, & GNU/Linux platforms.
- Install pockyt:
pip install -U pockyt
- Connect Pocket account:
pockyt reg
- Refer the Examples & Documentation below.
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
Feel free to contribute features, bugfixes, improvements, and usage ideas.
- Fork pockyt.
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
- Submit a pull request.
This project uses the GNU GPLv3 License.
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]}