Skip to content
A node web scraper to extract your linkedin connection emails
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Add UI Version option Jan 30, 2019 Update README Jul 23, 2019
index.js minor bugfix with version conditional Jul 23, 2019
package-lock.json Add interval emails functionality Dec 22, 2018
package.json Update script for linkedin latest UI Jul 23, 2019


A node web scraper to extract your linkedin connection emails

Currently not being maintained, but open to Pull Requests.

Important Note

Scraping data off of LinkedIn is against their User Agreement. This is purely intended for educational purposes.

If you would like to know the process on making this script, you can read about it here


LinkedIn allows you to export all of your connections' info into a csv, except for their emails. Additionally their API stopped allowing the extraction of emails around 2013-2014. Why don't we have access to our connections emails through their data export if we both agreed to share that info/data?


  • Clone this repo git clone or download
  • Move into the repo directory cd linkedin-email-extractor
  • Install dependencies npm install

How to Use

  • You will need the Connections.csv file that LinkedIn provides with the data export.
  • Add the Connections.csv file into the linkedin-email-extractor directory
  • Run npm start or node --harmony index.js
  • Enter LinkedIn Credentials when prompted
  • Wait for email extraction process to finish
  • An email.txt file will be generated with all the emails inside the stored_data folder.

LinkedIn UI Versions

If your panel looks like this, then you are still on the old version, use a version <= 1.1.1:


If your panel looks like this, then you are one the new version:


Issues extracting? Read This

If linkedin updates their page and changes the class of an element used in the script it will stop working. You can check out the source code and verify if any class has changed on linkedin and update the script to make it work again. I can't be constantly checking linkedin to see if they have changed something that breaks the script.

You can’t perform that action at this time.