Skip to main content

bird2board

Convert bird based bookmarks to board based ones.

Automated tests

This tool takes raw Twitter Bookmarks data and pushes the bookmarks to Pinboard.

Installation:

  1. Clone this repository
  2. Install with pip
#> cd bird2board
#> pip install .

Usage:

First download the raw Twitter bookmarks data:

  • Open the Twitter Bookmarks page
  • Using Developer tools, look for Network requests starting with Bookmarks?variables=.
  • For each of these requests, copy the response, which starts with {"data":{. You can copy the response through the right click context menu.
  • Save the response JSON into a new file.
  • If you have more than a single screen of bookmarks, scroll down to create more requests and responses. Copy these into new files in a directory.

Next find your Pinboard API token:

  • Sign into Pinboard
  • Go to Settings page and select Password tab.
  • Copy the API token including the username at the start.

Then use the tool to convert the bookmark data and save in Pinboard:

#> bird2board --help
Usage: bird2board [OPTIONS] PATH

  Save Twitter Bookmark .json file(s) at PATH (file or directory) to account
  using PINBOARD TOKEN.

Options:
  --toread / --not-toread    set Pinboard bookmarks as "to read"
  --shared / --not-shared    set Pinboard bookmarks as shared
  --replace / --no-replace   replace existing Pinboard bookmark for an URL
  -p, --pinboard-token TEXT  user token for Pinboard API  [required]
  --help                     Show this message and exit.

Example usage:

#> bird2board -p MY_TOKEN --toread ./responses/

Instead of providing the Pinboard API token as an option to the script, you can set the $BIRD2BOARD_PINBOARD_TOKEN environmental variable.

#> export BIRD2BOARD_PINBOARD_TOKEN=MY_TOKEN
#> bird2board --toread ./responses/

Notes:

  • The Pinboard API requires a 3 second wait between API requests, so submitting a large number of bookmarks can take a long time.
  • The Twitter Bookmark responses captured above are from the non-public API, and there will likely be breaking changes to the response structure in the future. Most recent breaking change to the response data was in June 2021.

Metadata

Release files for bird2board 0.2.0

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

Source distribution (sdist)

Source distribution for bird2board 0.2.0
File Size Uploaded Provenance
bird2board-0.2.0.tar.gz 13.2 kB Without provenance Details

Built distribution (wheel)

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

Total release size: 24.8 kB

Release files / bird2board-0.2.0.tar.gz

Download URL bird2board-0.2.0.tar.gz
Size 13.2 kB
Tags Source
SHA-256 checksum
How to use checksums
6a6d9e0888919651cbff0c7eba9221320dbaea1ab9acb9326a02c015a21a6b37
BLAKE2b-256 checksum
How to use checksums
54f7389ce00cf25ad93308b853038a6daa9e5e2cc30f0a6f2ebf5c91ada7ce91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6

Release files / bird2board-0.2.0-py3-none-any.whl

Download URL bird2board-0.2.0-py3-none-any.whl
Size 11.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4de51eb34bec337eff4c9bafca5d3e74e655bf7fcd56863b66685c2258c87dee
BLAKE2b-256 checksum
How to use checksums
0744e73c229c4a3ee8d49fd3421f483144a84f5e3c14fdcb29a9263aa5bc98e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.6

Security for bird2board 0.2.0

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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