Local Playwright CLI that opens your own LinkedIn feed, scrolls posts, extracts post text + URL, and sends each post to your webhook.
Typical flow:
LinkedIn feed -> webhook -> n8n -> AI fit check -> Google Sheet / Telegram
- runs locally on your machine
- uses your own browser session
- you log into LinkedIn yourself
- no LinkedIn password goes into config
- not a cloud service, extension, or phishing flow
The scraper sends only post data:
- post text
- post URL
- author
- published label
Your portfolio / skills / "knowledge" are not sent by the scraper.
Put that in the n8n template node:
Set portfolio + skills knowledge
Template file:
- Install deps
npm install
PLAYWRIGHT_BROWSERS_PATH=0 npx playwright install chromium- Create local config
- copy
config/app.example.json->config/app.json - add your own webhook URLs
- Import the n8n template
- set your webhook path
- fill
Set portfolio + skills knowledge - connect OpenAI / Google Sheets / Telegram credentials
- Log into LinkedIn
npm run loginThat opens a local persistent browser. Log in manually.
npm run help
npm run login
npm run inspect-feed
npm run scan
npm run scan:test
npm run scan:prodPublic example:
Local runtime config:
config/app.json(gitignored)
Common knobs:
scan.sendAllVisiblePostsfilters.containsAnydelivery.targetdelivery.mode
npm run inspect-feedshows what the parser sees before you send real traffic- exact post permalinks are not always available; sometimes LinkedIn only exposes profile/company fallback URLs
- this is feed-based, not full-profile crawling