Quelles sont les perspectives futures du web scraping sur LinkedIn ?

Pour citer ce mémoire et accéder à toutes ses pages
🏫 Université Mohamed Boudiaf - M'sila - Mathématiques et Informatique - Informatique
📅 Mémoire de fin de cycle en vue de l'obtention du diplôme de Master Académique - 2019/2020
🎓 Auteur·trice·s
Aichouche Mohamed et Mokhnache Belkasem
Aichouche Mohamed et Mokhnache Belkasem

Les perspectives futures du web scraping révèlent une opportunité inédite pour transformer la recherche d’emplois sur LinkedIn. En intégrant le traitement du langage naturel, cette étude propose une méthode innovante pour extraire et structurer des données, essentielle dans un monde de Big Data en constante évolution.


CHAPITER 3

CONCEPTION ET IMPLEMENTATION

Introduction

Ce chapitre représente la partie applicative de notre travail. Par conséquent, nous allons présenter dans ce qui suit notre “Web Scraper” qui travaille sur le portail LinkedIn.

L’objectif de notre web scraper est d’extraire l’information hébergée dans LinkedIn et qui concerne les emplois et les profils proposés.

Le déroulement de notre phase applicative se résume en deux parties :

La première concernant les emplois est supportée par l’utilisation de la bibliothèque « requests » pour assurer l’accès aux chemins désirés et la bibliothèque « BeautifulSoup » pour le travail d’analyse et d’extraction.

Pour la seconde partie concernant l’extraction des profils on a basé sur l’utilisation de la bibliothèque « Selenium » pour contrôler le navigateur et la bibliothèque « parsel » pour l’analyse et l’extraction.

Présentation de l’environnement technique du travail

Ce travail a été réalisé sous le système d’exploitation Windows 10 en utilisant les composantes techniques suivantes :

Python :

[10_perspectives-futures-du-web-scraping-sur-linkedin_10]

Figure 3. 1: Python v3

Est le langage de programmation le plus utilisé dans le domaine du Big Data et de la Data Science.

Créé en 1991, apparu à l’époque comme une façon d’automatiser les éléments les plus ennuyeux de l’écriture de scripts ou de réaliser rapidement des prototypes d’application.

Le choix de l’environnement Python est motivé par sa richesse en bibliothèques avec lesquelles on a travaillé à savoir :

BeautifulSoup : est une bibliothèque qui permet de récupérer facilement des informations à partir de pages Web. Il se trouve au sommet d’un analyseur HTML ou XML, fournissant des idiomes pythoniques pour itérer, rechercher et modifier l’arborescence d’analyse.

Requests : la bibliothèque « Requests » est un standard de facto pour effectuer des requêtes HTTP en Python. Elle résume les complexités de la création de demandes derrière un simple API afin que nous puissions nous concentrer sur l’interaction avec les services et la consommation de données dans nos applications. Cette bibliothèque reprend tous les travaux autour de Python HTTP/1.1 – et rend l’intégration avec des web services très facile. Pas besoin d’ajouter des query strings aux URLs manuellement, ou d’encoder nous-même nos datas pour les POST. Les Keep-alive et le groupement des connexions HTTP sont 100% automatisés, grâce à urllib3, qui est directement intégré à Requests.

Selenium : est une bibliothèque de commandes pour aider une interface de programmation avec un navigateur comme un véritable utilisateur. Selenium assure la recherche d’éléments dans le fichier HTML d’une page Web. Plusieurs navigateurs / pilotes sont pris en charge par cette bibliothèque tels que Firefox, Chrome et Internet Explorer, ainsi que le protocole Remote.

Parsel : est une bibliothèque Python sous licence BSD permettant d’extraire et de supprimer des données HTML et XML à l’aide de sélecteurs XPath et CSS, éventuellement combinés avec des expressions régulières.

Sublime Text :

Est un éditeur de texte vraiment puissant, il est multiplateforme, comporte des fonctionnalités de base mais également des fonctionnalités avancées très utiles (sélection verticale, multiple sélection, etc.), ainsi qu’une modularité qui nous permet, via un système de packages, de télécharger très facilement des fonctionnalités développées par de nombreux développeurs et testées par une importante communauté grandissante de jours en jours. Il permettra aux développeurs expérimentés et novices un gain de temps importants pour pouvoir se concentrer sur l’élément le plus important, le code.

[10_perspectives-futures-du-web-scraping-sur-linkedin_11]

Figure 3. 2: Interface du Sublime Text 3

Phases d’exécution

Le travail de notre scraper se déroule en deux phases. La première concerne l’extraction des emplois proposés sur LinkedIn et la deuxième concerne la recherche des profils toujours sur LinkedIn.

Pour Les Emplois

Dans cette partie, le travail est assuré par trois tâches (voir figure 3.1) :

  • Accès à la page de recherche LinkdIn
  • Analyse et extraction
  • Mise à jour de la base de données

Accès à la Page de recherche LinkedIn

Extraction

Mise à jour de La base de données

Figure 3. 3: Les phases d’exécution pour Emplois

Pour les Profils

Figure 3. 4: Les Phases d’exécution pour les Profils

Prendre le contrôle du navigateur

Accès et Connexion au LinkedIn

Accès et recherche dans Google

Accès au LinkedIn et extraction

Mise à jour de La base de données

Dans cette partie, le travail est assuré par trois tâches (voir figure 3.2) :

  • Prendre le contrôle du navigateur
  • Accès et connexion au LinkedIn
  • Accès et recherche dans Google
  • Accès au LinkedIn et extraction
  • Mise à jour de la base de données

Présentation du Scraper réalisé

Dans cette section, nous allons présenter l’interface de l’application avec quelques détails techniques concernant sa réalisation.

Interface du scraper

[10_perspectives-futures-du-web-scraping-sur-linkedin_12]

Figure 3. 5: L’interface de l’Application

Démarche technique sous Python

[10_perspectives-futures-du-web-scraping-sur-linkedin_13] – Utilisation des bibliothèques

Pour Les Profils

– Accès au LinkedIn

[10_perspectives-futures-du-web-scraping-sur-linkedin_14]

– Accès et recherche dans Google. L’accès au LinkedIn

[10_perspectives-futures-du-web-scraping-sur-linkedin_15]

– Extraction des Informations du Profil

– Analyse de page et extraction d’information pour chaque Profil

[10_perspectives-futures-du-web-scraping-sur-linkedin_16]

– Sauvegarde des résultats dans un fichier CSV

[10_perspectives-futures-du-web-scraping-sur-linkedin_17]

Pour Les Emplois

– Accès à l’URL Donné

[10_perspectives-futures-du-web-scraping-sur-linkedin_18]

– Analyse de page et extraction d’information pour chaque emploi

[10_perspectives-futures-du-web-scraping-sur-linkedin_19]

– Sauvegarde des résultats dans un fichier Excel

[10_perspectives-futures-du-web-scraping-sur-linkedin_20]

Conclusion

Dans ce chapitre, nous avons présenté l’implémentation de notre Application, l’environnement et les outils et les bibliothèques de développement utilisés. Nous avons présenté également les étapes d’exécutions avec leurs tâches techniques associées ainsi que les résultats obtenus.

CONCLUSION GENERALE

Avec l’avènement du paradigme Big data, les grandes entreprises qui veulent faire la course d’entête doivent investir énormément dans leurs systèmes décisionnels, et en particulier utiliser ce paradigme pour mieux comprendre les marchés, maîtriser leurs actions et faire vivre à leurs clients les expériences qu’ils attendent.

L’utilisation du Big data est cernée par le défi de prendre en charge une gigantesque masse d’information avec plusieurs formes et qui proviennent de différentes sources. Avec la diversité de ces informations et de ses ressources et la multiplicité des composantes web, le processus de l’extraction du contenu web est devenu de plus en plus indispensable. Il permet de trouver la bonne information et dans les meilleures conditions d’utilisation.

Dans ce mémoire, nous avons présenté une méthode d’extraction de données à partir du web en utilisant un Web Scraping. Ce dernier est basé sur l’extraction d’un contenu spécifique dans un environnement web plein de déchets et d’informations inutiles.

Pour ce faire, nous avons présenté dans ce mémoire le domaine de Big data avec ses composantes connexes ainsi que le domaine du Web scraping et ses techniques. Nous avons présenté également notre scraper réalisé sous l’environnement Python avec ses différentes phases de travail. Notre scraper concerne l’extraction de l’information concernant les emplois et les profils hébergés dans le portail LinkedIn.

Pour des futures améliorations, nous proposons d’évoluer ce produit afin qu’il puisse extraire n’importe quel type d’information de n’importe quel site web. Nous proposons aussi de penser aux techniques de liaison permettant d’affilier directement les informations extraites avec l’application utilisatrice.


Questions Fréquemment Posées

Quelles bibliothèques Python sont utilisées pour le web scraping sur LinkedIn ?

Les bibliothèques utilisées sont BeautifulSoup, Requests, Selenium et Parsel.

Comment fonctionne le web scraper pour l’extraction des emplois sur LinkedIn ?

Le web scraper utilise la bibliothèque ‘requests’ pour accéder aux chemins désirés et ‘BeautifulSoup’ pour l’analyse et l’extraction des informations sur les emplois.

Quel est l’objectif principal du web scraper développé dans cette étude de cas ?

L’objectif principal est d’extraire l’information hébergée dans LinkedIn concernant les emplois et les profils proposés.

Rechercher
Télécharger ce mémoire en ligne PDF (gratuit)

Laisser un commentaire

Votre adresse courriel ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Scroll to Top