# Parse timelogs for upload A script for converting basic timelogs to the formats for timetracking import. Initially for [Pomodoro Prompt](https://gitlab.com/agaric/python/pomodoroprompt) to Harvest and [Business Tracker](https://gitlab.com/novawebdevelopment/business-tracker) Pmodoro Prompt is extremely simplistic, and only has a description field and automatically saves the date. The time unit for each entry is half an hour. ## Installation ``` mkdir -p ~/Projects/agaric/python git clone git@gitlab.com:agaric/python/parse-timelogs-for-upload.git cd parse-timelogs-for-upload python -m pip install --user -r requirements.txt ``` ## Usage ```bash python pomodoro_to_harvest.py ``` ## Background notes To import into a timetracking system of any sophistication, we need to parse our description and Harvest allows CSV import, with a bunch of annoying fields. If project doesn't exist it will create a new project. # Learning from this script and continuing development Rather than having to type out all 40 plus lines of data processing, you can also run the whole script in the interactive shell and play with it: After typing `python` to get the interactive Python shell in this directory, you can do this line: ```python exec(open('pomodoro_to_harvest.py').read()) ``` And now you can interact with the resulting timelog DataFrame: ```python timelog.query("time>30").loc[:100,["description","time","orig_desc"]].tail(50) ``` Or the slightly more processed tl DataFrame, for example to get the hours worked per project: ```python tl.groupby("project").agg({"time": "sum"})["time"]/60 ``` And yeah you can just sort of tack on the column you want to mess with and do an operation like that!