UNPKG

linkedin-canonical-url

Version:

Get the "true" version of a linkedin url for any profile

54 lines (39 loc) 2.45 kB
# linkedin-canonical-url LinkedIn urls are "*localized*" to various markets, this micro-module creates a canonical url from any international one. [![Build Status](https://travis-ci.org/akitten/linkedin-canonical-url.svg)](https://travis-ci.org/akitten/linkedin-canonical-url) [![codecov.io](https://codecov.io/github/akitten/linkedin-canonical-url/coverage.svg?branch=master)](https://codecov.io/github/akitten/linkedin-canonical-url?branch=master) [![Code Climate](https://codeclimate.com/github/akitten/linkedin-canonical-url/badges/gpa.svg)](https://codeclimate.com/github/akitten/linkedin-canonical-url) [![Dependency Status](https://david-dm.org/akitten/linkedin-canonical-url.svg)](https://david-dm.org/akitten/linkedin-canonical-url) [![devDependency Status](https://david-dm.org/akitten/linkedin-canonical-url/dev-status.svg)](https://david-dm.org/akitten/linkedin-canonical-url#info=devDependencies) ## Why? It *can* appear that a single person has multiple possible URLs and therefore its possible to have duplicate profiles. We don't like duplicate data. So we need a way of transforming the URL for any "local" version of LinkedIn into its "***canonical***" (*unique*) version. ## What? Given an international LinkedIn URL such as: https://uk.linkedin.com/in/john-smith-82a505 into the canonical version: https://www.linkedin.com/in/john-smith-82a505 This is a relatively *simple* example. The interesting one is where LinkedIn appends *noise* in the url e.g: https://sy.linkedin.com/pub/krzysztof-marzec/a7/576/b50?trk=biz_employee_pub Which gets re-directed to: https://www.linkedin.com/in/krzysztof-marzec-b50576a7 *Thankfully* there *is* a ***pattern*** so we can transform the urls. ## How? ```sh npm install linkedin-canonical-url --save ``` Then in your script: ```js var transform_linkedin_url = require('linkedin-canonical-url'); var local_url = 'https://sy.linkedin.com/pub/krzysztof-marzec/a7/576/b50?trk=biz_employee_pub'; var canonical_url = transform_linkedin_url(local_url); console.log('Transformed: ', canonical_url); // https://www.linkedin.com/in/krzysztof-marzec-b50576a7 ``` That's it. Now each time you see a LinkedIn URL pass it through this transformer to ensure that you are getting the ***canonical*** version. > **Note**: the transformer is written to be human-readable. If you run into a "*performance-bottleneck*" using this code, please feel free to submit a PR to make it faster.