reard96 / linkedin-email-extractor

A node web scraper to extract your linkedin connection emails

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

linkedin-email-extractor

Updated as of 5/2/19 - works with new LinkedIn redesign. Thanks to FutoRicky and anhuin69 for the code, all I did was update some links & DOM elements.

Note: After cycling through ~150-200 contacts, it appears that the email addresses begin to populate with your most recent contact's email...I believe that this is LinkedIn trying to prevent bots. Re-starting the script when this happens takes care of the problem. Of course, this is for eductational use only!

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

Why?

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?

Installation

  • Clone this repo git clone https://github.com/FutoRicky/linkedin-email-extractor.git 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

LinkedIn recently updated their UI and it affected the scraper logic. Some people already have the updated UI but some don't, so when you start the script you will be prompted to choose what version do you have. To know what version you have, go into the network section and look at the left side panel.

If your panel looks like this, then you are still on the old version:

Screen-Shot-2019-01-30-at-4-12-12-PM.png

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

Screen-Shot-2019-01-30-at-4-14-34-PM.png

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.

About

A node web scraper to extract your linkedin connection emails


Languages

Language:JavaScript 100.0%