Local LinkedIn automation through a visible, signed-in Chrome session.
- Use an existing LinkedIn session
- Scrape profiles
- Connection requests
- Send messages
- Read message threads
- Endorse profiles
- Visit profiles
- Like posts
- Posts, reactions and comments
npm install linkout-scraper --saveStart Chrome on the configured macOS device. Sign in to LinkedIn manually. Run Linkout against that browser.
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
--remote-debugging-port=9222 \
--window-size=1440,900 \
--user-data-dir="/absolute/path/to/linkout-chrome-profile"const Linkout = require("linkout-scraper");
(async () => {
const browser = await Linkout.tools.connectLocalChrome();
const pages = await browser.pages();
const page =
pages.find((candidate) => candidate.url().includes("linkedin.com")) ||
(await browser.newPage());
await page.setViewport({
width: 1440,
height: 900,
});
await Linkout.tools.loadCursor(page, true);
const actionPolicy = Linkout.tools.createActionPolicy({
config: {
operatingHours: { start: 9, end: 18 },
operations: {
connect: { enabled: true, dailyLimit: 10 },
},
},
});
await Linkout.services.connect(
page,
{ actionPolicy },
{
confirm: true,
message: "Hello.",
url: "https://www.linkedin.com/in/example/",
}
);
})();Linkout keeps authentication on your device. It does not submit credentials, set LinkedIn cookies, use proxies, or accept browser fingerprint overrides.
Linkout. Maintained by Sai-Adarsh.
Issues and pull requests: linkoutapp/linkout-scraper.
- Fork the repository and clone it on your device.
- Open a pull request.
MIT.