PROJECT / linkedin-markdownificator
linkedin-markdownificator
OSS fork of a CLI that exports a full LinkedIn profile to Markdown (and JSON) for personal sites, CVs, and AI agents. No official API: Selenium + cached HTML, so you stop maintaining LinkedIn and a separate CV by hand.
Problem
LinkedIn doesn’t give API access to individual developers. The public profile is incomplete, and keeping LinkedIn plus a site/CV in sync is double work. When LinkedIn ships a new React DOM, scrapers break.
What I did
Took over the fork and made it resilient to the post-2025 DOM (artdeco classes → componentkey). Externalized selectors in JSON, added progressive scroll for lazy sections, JSON export, Jinja2 templates, headless/cached modes, and a 26-test Pytest integration suite with Ruff.
Highlights
- Exports the full profile (not just the public one) to Markdown and JSON, ready for CVs and agents.
- Resilient to the post-2025 React DOM: selectors externalized in JSON instead of hardcoded.
- Progressive scroll for lazy sections, plus headless mode and HTML caching.
- Swappable Jinja2 templates and a 26-test Pytest integration suite with Ruff.
Stack
- Python
- Selenium
- BeautifulSoup
- Parsel
- Jinja2
- Pytest
- Ruff
Links