Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Build Status Build Status Build Status

United States of Browsers

A project to combine and organize history and bookmarks across multiple browsers and browser profiles.

EARLY DEV BUILD. NOT INTENDED FOR WIDESPREAD USE. USE AT YOUR OWN RISK.

The wiki has more info about the project's philosophy.

I use multiple browsers and multiple browser profiles. This scatters my history, bookmarks across multiple interfaces.

Whenever I wish to search something, I have to go through them all until I find them. I wish to build a tool which will read browser profile files and combine the history and bookmarks list, ready to be searched and organized automatically.

Initial idea is to read the broswer's sqlite3 database files and copy and combine the data in one place, then allow simultaneous keyword and date range search on it. More features for searching and organization and maybe an ML algo to recommend from within the combined history and the web will be implemented.

Note: Play with it, I haven't made it Demo-ready yet. It shouldn't damage anything, but if it is does... THIS IS A USE AT YOUR OWN RISK SOFTWARE.

Installation instructions are further down.
  • Built with python3.6
  • using Pycharm 2017.3 CE
  • On Windows 10 x64 Fall Creators Update
  • For Mozilla Firefox, Chrome, Opera, Vivaldi
  • May work with other Windows versions.

It is Windows ONLY for now. I got it working with my personal installation of Linux Mint. Watch this space.

Easy to make it work for other OSes. Changing path locations for browser profile folder should make it work on other OS. (TODO)

Following functionality has been implemented as of Jan 30, 2018:

  • Browser histories of Firefox, Chrome, Opera and Vivaldi can be combined into one database.
  • A web UI served by Flask.
  • Keyword and Date range search.

Future Plans:

  • Update duplicate entries. (?)
  • Refine the GUI using JS & AJAX.
  • Scraping the URL and getting the text back.
  • ML to pick out keywords from text and title.
  • Use that to tag and categorize the history entries
To Check it out: (Currently, instructions for command line only)
  1. Install the required software if it is not already installed.

  2. Open terminal (In windows, these are cmd.exe and powershell).

  3. Navigate to the directory/folder where you wish to store the files. In this example, we will do this on the windows Desktop. In the terminal window, type the command:

     cd C:\Users\<your username>\Desktop (press ENTER).
    
  4. Clone this repo's master branch using the command:

     git clone "https://github.com/kchawla-pi/united-states-of-browsers.git"
    
  5. Navigate into the newly created directory/folder:

     cd united-states-of-browsers
    
  6. Make a virtual environment using:

     python -m venv venv
    
  7. Activate the virtual environment:

     venv\Scripts\activate
    
  8. Install the required python packages:

     pip install -r requirements.txt
    
  9. Install the project:

     pip install .
    

    or if you wanna play with the code;

     pip install --editable .
    
  10. To merge the databases and launch the user interface, run:

     python .\united_states_of_browsers\run_usb.py
    
  11. Then go to your browser of choice and visit:

    localhost:5000
    
  12. To stop, go back to the same terminal window where the program is running and press Ctrl+C.

  13. Deactivate the virtual environment by typing deactivate and pressing ENTER.

Merging the database will generate an sqlite file in the ~\USB\ directory/folder, where ~ is the user directory/folder.
In windows this is typically C:\Users\<user name>

Currently tests are not available.

To run tests (requires pytest), type:

pytest

Metadata

Release files for usb 0.0.83.dev0

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

Source distribution (sdist)

Source distribution for usb 0.0.83.dev0
File Size Uploaded Provenance
usb-0.0.83.dev0.tar.gz 14.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for usb 0.0.83.dev0
File Interpreter ABI Platform
usb-0.0.83.dev0-py3-none-any.whl Python 3 none any Details

Total release size: 45.0 kB

Release files / usb-0.0.83.dev0.tar.gz

Download URL usb-0.0.83.dev0.tar.gz
Size 14.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a459f58fcdf227611f4f08d232735307e9258545f06c84c00bdb4230b6ae2812
BLAKE2b-256 checksum
How to use checksums
cb401be83a46f120a368396f234c332613253065668420f7210518d48c547ed2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.1.post20200323 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.10

Release files / usb-0.0.83.dev0-py3-none-any.whl

Download URL usb-0.0.83.dev0-py3-none-any.whl
Size 30.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0afe4a703acab36a7b956e6b1381a9d0ce147b066a6382bd414eb10b9b0e3d3d
BLAKE2b-256 checksum
How to use checksums
227bbae99e423087cb454b65ff633a616a60e9d46aafe0629444b408437d8ada
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.1.post20200323 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.10

Security for usb 0.0.83.dev0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release
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