Skip to main content

A Python library for parsing PDFs of LinkedIn profiles

Project description

ez-parse

A Python library that scrapes essential information from PDFs of LinkedIn profiles.

License: MIT codecov PyPI docs

Project Board

Overview

This is a parser that extracts important information from a LinkedIn profile PDF. It converts the PDF to a list of strings, and then uses LinkedIn's headers to create a dictionary that maps said headers to string values that contain the most relevant parts of a candidate's profile.

Installation

Install the library's dependencies and build the library using:

pip install ez-parse

Accessing LinkedIn PDFs

Visit the LinkedIn profile that you would like to parse. Under the individual's basic profile information, there is a button labeled "More". Click on this button, and then click on "Save to PDF".

Usage

In your code, begin by importing the package:

from ez-parse import parser

You can extract the text data from the PDF like so:

data = parser.extract_pdf(<path_to_linkedin_pdf>)

This parsed data can also be stored in a dictionary:

res = parser.get_many(data)

Examples

Below are some minimal examples of how the helper functions for each header work. Note how each helper function is designed to exclude information after encountering an irrelevant section header:

  1. get_contact

>>> li = ["999-999-9999", "Email", "URL", "Top Skills"]

>>> print(get_contact(li, -1)[0])

["999-999-9999", "Email", "URL"]

  1. get_skills

>>> li = ["Python", "Java", "C++", "Certifications"]

>>> print(get_skills(li, -1)[0])

["Python", "Java", "C++"]

  1. get_certifications

>>> li = ["QuickBooks", "CPR", "Bartending", "Honors-Awards"]

>>> print(get_certifications(li, -1)[0])

["QuickBooks", "CPR", "Bartending"]

  1. get_honors

>>> li = ["USACO Gold", "USAMO Silver", "USACO Bronze"]

>>> print(get_honors(li, -1)[0])

["USACO Gold", "USAMO Silver", "USACO Bronze"]

  1. get_summary

>>> li = ["A", "mysterious", "person.", "Languages"]

>>> print(get_summary(li, -1)[0])

["A", "mysterious", "person."]

  1. get_languages

>>> li = ["English", "Spanish", "Latin"]

>>> print(get_languages(li, -1)[0])

["English", "Spanish", "Latin"]

For a more in-depth example that extracts text from the PDF and relies on all of these helper functions, please see the documentation.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ez-parse-0.1.2.tar.gz (47.1 kB view hashes)

Uploaded Source

Built Distribution

ez_parse-0.1.2-py2.py3-none-any.whl (39.5 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page