whatisgithub

What is bookmark-export?

pauljump/bookmark-export — explained in plain English

Analysis updated 2026-05-18

0PythonAudience · generalComplexity · 2/5LicenseSetup · easy

In one sentence

A free local Python tool that backs up your X (Twitter) bookmarks, including full tweet text, threads, and articles, by driving a real browser with your own login cookies.

Mindmap

mindmap
  root((bookmark eXport))
    What it does
      Backs up X bookmarks
      Full tweets and threads
      Article text extraction
    Tech stack
      Python
      Playwright
      Chromium
    Use cases
      Personal bookmark backup
      Article archiving
      Incremental re-runs
    Audience
      X users
      Personal data hoarders

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Back up all of your X bookmarks to a local JSONL file for safekeeping.

USE CASE 2

Pull the full text of a bookmarked X Article rather than a truncated preview.

USE CASE 3

Re-run the tool regularly to only fetch new bookmarks and refresh engagement counts.

USE CASE 4

Scroll deeper into old bookmarks with a higher scroll count on a first-time backfill.

What is it built with?

PythonPlaywrightChromium

How does it compare?

pauljump/bookmark-export0xallam/my-recipe0xhassaan/nn-from-scratch
Stars00
LanguagePythonPythonPython
Last pushed2022-11-22
MaintenanceDormant
Setup difficultyeasymoderatemoderate
Complexity2/52/54/5
Audiencegeneralgeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Requires copying two cookie values from a logged-in browser session, which expire periodically.

MIT license: free to use, modify, and share, including commercially, as long as the copyright notice is kept.

So what is it?

This is a Python tool that backs up a person's bookmarked posts from X, the platform formerly known as Twitter, since X does not offer any official way to export them. It saves each bookmark as one line in a text file, including the full post text, the full text of any linked article, the author's own follow up replies as a thread, and details about quoted posts, links, and attached media. X protects its bookmarks behind an internal system that only accepts requests generated by X's own website code running in a real browser, which blocks simple scripts that try to fake those requests directly. To get around this without breaking any rules, the tool opens an invisible, automated version of the Chrome browser using your own login cookies, visits the bookmarks page as you normally would, and simply reads the data that the page itself requests from X's servers while scrolling. Because the browser is the one asking, the request looks completely normal to X. It works in two passes. First it scrolls through the bookmarks list collecting every post. Then, for each new bookmark it has not seen before, it opens that specific post once to gather the extra details the main list leaves out, such as the full article text or thread replies. Every time it runs, it only does this deeper lookup on brand new bookmarks, while just refreshing like and view counts on ones it already saved. Setup requires Python 3.9 or newer, plus copying two authentication values out of a logged in browser session, called auth_token and ct0. These act like a temporary password and are stored only in a local file that never gets uploaded anywhere. If the tool suddenly stops finding any bookmarks, the most common cause is that those two values expired and need to be copied again. This project is aimed at individual X users who want a free, local, and private backup of their own bookmarks, and it is released under the MIT license.

Copy-paste prompts

Prompt 1
Explain how this tool gets around X's anti-bot protection without an official API.
Prompt 2
Walk me through finding my auth_token and ct0 cookies to authenticate this tool.
Prompt 3
How does the two-pass list and enrich process work in scrape.py?
Prompt 4
What should I do if a run captures zero bookmarks?

Frequently asked questions

What is bookmark-export?

A free local Python tool that backs up your X (Twitter) bookmarks, including full tweet text, threads, and articles, by driving a real browser with your own login cookies.

What language is bookmark-export written in?

Mainly Python. The stack also includes Python, Playwright, Chromium.

What license does bookmark-export use?

MIT license: free to use, modify, and share, including commercially, as long as the copyright notice is kept.

How hard is bookmark-export to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is bookmark-export for?

Mainly general.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.