Skip to main content

nostalgia_chrome

Cross-platform Chrome History Analysis

PyPI PyPI

Self tracking

There is a movement of self tracking. Monitoring pulse, heartbeat and so on. But the most important is not being tracked: our online behavior.

Making sure we can self document, we need the following things.

  1. Chrome only keeps its history for a max of 90 days, so we need to start saving history.

  2. We need to collect HTML data from the pages we visit.

  3. We need to extract and analyze data from the HTML, such as code snippets, links, microdata, images, events.. anything really. This is done in Nostalgia Core.

  4. Allow plugins (and make them configurable, please contribute). The first example is that it will additionally track which videos you watch.

What can you expect (Data overview)

In ~/nostalgia_data/meta.jsonl an index will be saved per visit:

{
  "path":"/home/pascal/nostalgia_data/html/1576317113.7_httpsgithubcomnostalgiadevnostalgia_chrome.html.gz",
  "url": "https://github.com/nostalgia-dev/nostalgia_chrome",
  "time":"1576317113.75019"
}

In ~/nostalgia_data/html the source HTML will be stored as .html.gz (reaching about 8x compression).

In ~/nostalgia_data/videos_watched.jsonl the data for events on HTML5 video elements will be stored (on stop playing/close tab):

{
  "playingSince": 1576273573.08,
  "seekTime": 0,
  "playingUntil": 1576273599.977,
  "duration": 26.8970000744,
  "totalClipDuration": 3510.301,
  "pageLoadTime": 1576266470.316,
  "loc": "https://www.youtube.com/watch?v=Zz-bhLjVS5o",
  "title": "Lost Frequencies | Tomorrowland Mainstage 2019 (Full Set) - YouTube",
  "likes": 24137,
  "dislikes": 946
}

Installation

  1. Clone this repository: git clone git@github.com:nostalgia-dev/nostalgia_chrome.git

  2. In Chrome click the settings button and click "More tools" and navigate to "Extensions". Click "Load unpacked". Navigate to the chromePlugin folder and click "Open".

  3. pip install nostalgia_chrome

  4. To test it out, run nostalgia_chrome run_server. This will run the web server in the foreground so you can see that it works.

  5. Visit a (non-file / localhost) URL so that you can verify it works. The data will be stored in ~/nostalgia_data/meta.jsonl, ~/nostalgia_data/html.

  6. To make sure nostalgia_chrome gets automatically run on boot:

On Linux (systemctl based):

pip install sysdm
sysdm create "nostalgia_chrome run_server" --extensions ""

On Windows awaiting contribution for how to do this https://github.com/nostalgia-dev/nostalgia_chrome/issues/2

On OSX awaiting contribution for how to do this https://github.com/nostalgia-dev/nostalgia_chrome/issues/1

Metadata

Release files for nostalgia-chrome 0.0.24

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nostalgia-chrome 0.0.24
File Size Uploaded
nostalgia_chrome-0.0.24.tar.gz 27.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nostalgia-chrome 0.0.24
File Interpreter ABI Platform
nostalgia_chrome-0.0.24-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 36.0 kB

Release files / nostalgia_chrome-0.0.24.tar.gz

Download URL nostalgia_chrome-0.0.24.tar.gz
Size 27.9 kB
Tags Source
SHA-256 checksum
How to use checksums
1bf8863104993376320b8ca3131c32bffb530e9d1ca4f9622c7ef30471d89b42
BLAKE2b-256 checksum
How to use checksums
06117d9e0321c6f22ff7baf3b04cf96c0bc6ac088acbabf3689c64c5df561cde
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0a0

Release files / nostalgia_chrome-0.0.24-py2.py3-none-any.whl

Download URL nostalgia_chrome-0.0.24-py2.py3-none-any.whl
Size 8.1 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
def84146606b61bff893511f5485be6d48fc87894e67a97b038b3bcb60a6a541
BLAKE2b-256 checksum
How to use checksums
3a5d5eb5a00ff1dea920641d86d7123b82b6880daae6135601ab8e5daca144bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.7.0a0

Release history Release notifications | RSS feed

This release

0.0.24 This release

2 release files

0.0.21

2 release files

0.0.20

2 release files

0.0.17

2 release files

0.0.16

2 release files

0.0.15

2 release files

0.0.14

2 release files

0.0.10

2 release files

0.0.8

2 release files

0.0.7

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page