This scraper is using scrapfly.io and Python to scrape data from linkedin.com.
Full tutorial https://scrapfly.io/blog/how-to-scrape-linkedin-person-profile-company-job-data/
The scraping code is located in the linkedin.py
file. It's fully documented and simplified for educational purposes and the example scraper run code can be found in run.py
file.
This scraper scrapes:
- Linkedin public profile pages for profile data
- Linkedin company pages for company data
- Linkedin job search pages for job data
- Linkedin job pages for detailed job data
For output examples see the ./results
directory.
Note that this code is provided free of charge as is, and Scrapfly does not provide free web scraping support or consultation. For any bugs, see the issue tracker.
This Linkedin.com scraper uses Python 3.10 with scrapfly-sdk package which is used to scrape and parse Linkedin's data.
- Ensure you have Python 3.10 and poetry Python package manager on your system.
- Retrieve your Scrapfly API key from https://scrapfly.io/dashboard and set
SCRAPFLY_KEY
environment variable:$ export SCRAPFLY_KEY="YOUR SCRAPFLY KEY"
- Clone and install Python environment:
$ git clone https://github.com/scrapfly/scrapfly-scrapers.git $ cd scrapfly-scrapers/linkedin-scraper $ poetry install
- Run example scrape:
$ poetry run python run.py
- Run tests:
$ poetry install --with dev $ poetry run pytest test.py # or specific scraping areas $ poetry run pytest test.py -k test_profile_scraping $ poetry run pytest test.py -k test_company_scraping $ poetry run pytest test.py -k test_job_search_scraping $ poetry run pytest test.py -k test_job_page_scraping