Développeur web et mobile (4),
nettoyage des données

Publié le 15 février 2021, par Richard Carlier
Série: Développeur Web et Mobile
#annonces #developpeurMobile #developpeurWeb #emploi #pole emploi #python

Dans l’épisode précédent, j’ai récolté 10288 petites annonces, tournant autour des métiers du développement Web et Mobile, mais avec beaucoup de bruit.

Il est temps de filtrer, cibler et nettoyer un peu…

Vous cherchez une Formation professionnelle Développement web ?

Choisissez une valeur sûre, Digital Campus Paris.

(et en plus, vous m'aurez comme professeur référent et formateur...)

Filtrage, par le choix des intitulés de poste

En cherchant sur la catégorie M1805, certaines appellations et mots clefs choisis, et après fusion, j’obtiens:

En tête, « Développeur / Développeuse web » ne me parait guère surprenant, ni le « Développeur / Développeuse full-stack » qui arrive assez vite… Mais il y a encore du déchet (considérant le cadre de mon analyse, pas la qualité des postes bien entendu).

374 intitulés de poste ressortent, pour la plupart en quantité dérisoire.

On va attaquer la partie déplaisante : lister tous les intitulés de poste, et, manuellement, éliminer ceux qui me paraissent hors sujet. Manuellement? Non, je prends donc le parti de ne retenir que les intitulés fréquents, avant de faire le côté manuel…

Et de ne garder en shortlist que 8 intitulés (je suis impitoyable).

Et là, nous avons du ciblage qui me parle.

Nettoyage classique

A ce stade, et en parcourant à l’oeil le fichier JSON, je trouve qu’il est nickel, à l’image du reste de ce service.

Souvent, l’Open Data réserve de mauvaises surprise, mais consommer une API c’est autre chose. Cela doit être bien formaté, sinon cela ne sert pas à grand chose (voir risque de ne pas fonctionner).

Néanmoins, et nous l’avions évoqué dans un épisode précédent, certains textes de description contiennent des balises html pour l’encodage des accents et autres caractères spéciaux. Retirons cela, la fonction python étant unescape() du module html :

import html
description = html.unescape(description)

Simple.

Certaines données ne m’intéressent pas trop dans le cadre de cette étude, donc je retire des clefs du type origineOffre, lieuTravail, nombrePostes, contact, et quelques autres…

Le fichier des annonces est donc propre, et 3584 annonces sont retenues au final.

Autres fichiers

Je profite de la moulinette pour générer d’autres fichiers thématiques, principalement pour simplifier les analyses:

  • formations
  • compétences
  • qualités professionnelles
  • textes (regroupant les intitulés et les descriptions), pour une analyse… textuelle

Pour les 3 premiers principalement, j’affinerai peut être par la suite pour permettre des recoupements par intitulés de poste… A voir.

Dans tous les cas, me voici armé désormais pour attaquer le plus intéressant, la visualisation de ce qu’il y a dans toutes ces annonces…

A l’épisode prochain!

Top