Grattage web LinkedIn


11

J'ai récemment découvert un nouveau package R pour la connexion à l'API LinkedIn. Malheureusement, l'API LinkedIn semble assez limitée pour commencer; par exemple, vous ne pouvez obtenir que des données de base sur les entreprises, ce qui est séparé des données sur les individus. Je souhaite obtenir des données sur tous les employés d'une entreprise donnée, ce que vous pouvez faire manuellement sur le site mais ce n'est pas possible via l'API.

import.io serait parfait s'il reconnaissait la pagination LinkedIn (voir fin de page).

Quelqu'un connaît-il des outils ou des techniques de grattage Web applicables au format actuel du site LinkedIn, ou des moyens de plier l'API pour effectuer une analyse plus flexible? De préférence en R ou sur le Web, mais certainement ouvert à d'autres approches.


2
Le raclage Web LinkedIn est contraire à leurs conditions de service. Voir LinkedIn «À FAIRE » et «À NE PAS FAIRE » - À NE PAS FAIRE: «Utiliser des logiciels manuels ou automatisés, des appareils, des robots de scripts, d'autres moyens ou processus pour accéder,« gratter »,« explorer »ou« araignée »les Services ou tout autre données ou informations connexes; "
Brian Spiering

Réponses:



3

Scrapy est une excellente bibliothèque Python qui peut vous aider à gratter différents sites plus rapidement et à améliorer la structure de votre code. Tous les sites ne peuvent pas être analysés avec des outils classiques, car ils peuvent utiliser la création de contenu JS dynamique. Pour cette tâche, il est préférable d'utiliser Selenium (Il s'agit d'un cadre de test pour les sites Web, mais c'est également un excellent outil de grattage Web). Un wrapper Python est également disponible pour cette bibliothèque. Dans Google, vous pouvez trouver quelques astuces qui peuvent vous aider à utiliser Selenium dans Scrapy et à rendre votre code clair et organisé, et vous pouvez utiliser d'excellents outils pour la bibliothèque Scrapy .

Je pense que le sélénium serait un meilleur grattoir pour Linkedin que les outils classiques. Il y a beaucoup de contenu javascript et dynamique. De plus, si vous souhaitez effectuer une authentification dans votre compte et gratter tout le contenu disponible, vous aurez beaucoup de problèmes avec l'authentification classique en utilisant des bibliothèques simples comme les requêtes ou urllib .


1

J'aime rvest en combinaison avec le plug-in chrome SelectorGadget pour sélectionner les sections pertinentes.

J'ai utilisé rvest et construit de petits scripts pour paginer à travers les forums en:

  1. Recherchez l'objet "Page n Of m"
  2. Extraire m
  3. En fonction de la structure de la page, créez une liste de liens de 1 à m (par exemple, www.sample.com/page1)
  4. Itérer le grattoir à travers la liste complète des liens

0

J'irais aussi avec beautifulsoup, si vous connaissez le python. Au cas où vous coderiez plutôt javascript / JQuery (et que vous connaissez node.js), vous voudrez peut-être vérifier CoffeeScript ( consultez le tutoriel ) Je l'ai déjà utilisé avec succès à plusieurs reprises pour gratter des pages Web.


0

lxml est une belle bibliothèque de mise au rebut Web en Python. Beautiful Soup est un emballage sur lxml. Ainsi, lxml est plus rapide que la soupe grasse et belle et a une courbe d'apprentissage beaucoup plus facile.

Ceci est un exemple d'un grattoir que j'ai construit avec lui pour un projet personnel, qui peut parcourir les pages Web.


0

BeautifulSoup ne fonctionne pas sur LinkedIn. Scrappy viole les politiques. Octoparse est uniquement pour Windows. Y a-t-il un autre moyen? Je souhaite extraire des données de personnes similaires pour le compte d'une personne. Aidez-moi!


1
Veuillez poster ceci en tant que commentaire, ou poser une nouvelle question
christopherlovell

Il s'agit d'informations importantes, mais veuillez supprimer la question si cela est censé être une réponse.
Pithikos

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.