Python package providing a friendly command-line interface to summarize tinyletter email newsletter statistics.
Built on top of tinyapi, which wraps around TinyLetter's API, which is publicly accessible but undocumented—so, no guarantees.
tinysumma
runs as a command-line script. Sample usage:
>>tinysumma --help usage: tinysumma [-h] [-l] [-n NUMBEREDISSUE] [-u LETTERNAME] [--datadir DATADIR] optional arguments: -h, --help show this help message and exit -l, --latestissue print stats latest issue -n NUMBEREDISSUE, --numberedissue NUMBEREDISSUE print stats for numbered issue (first=1) -u LETTERNAME, --updateletter LETTERNAME download latest stats to *.csv --datadir DATADIR data directory (if not current dir) >>tinysumma --updateletter mytinyletter Password: >>tinysumma --latestissue Your issue, 'Issue Title', was opened by 42 unique subscribers. That's a 75.0% open rate! The most popular url was https://github.com/awbirdsall/tinysumma, with 17 total clicks. A total of 9 urls were clicked.
Every time that tinysumma --updateletter mytinyletter
is run, it writes three csv files: messages.csv
, urls.csv
and subscribers.csv
(default: current directory, unless other path passed in with --datadir
flag). The command overwrites existing files with those names, without requiring confirmation! All summary data reported by other commands are taken from those files.
The csv files provide a lot more information than what tinysumma
summarizes! A more in-depth analysis can always be performed outside of tinysumma
(e.g., starting with pandas.read_csv()
).
Install using pip
.
Install from PyPI:
pip install tinysumma
Install most recent Github commit (stability not guaranteed):
pip install git+https://github.com/awbirdsall/tinysumma
Tested on Python 3.5.
Requires tinyapi
and pandas
(installation of which should be automatically handled by pip
).
Running the tests requires pytest
.
Tests are located in the tests/
subfolder and can be run using py.test
.
Posting issues or pull requests to the github page is welcome!