analyse-R icon indicating copy to clipboard operation
analyse-R copied to clipboard

Chapitre récupération de données numériques (scraping)

Open briatte opened this issue 10 years ago • 9 comments

J'ai un exemple ici (communiqués du FN), qui peut aussi servir pour le chapitre réseaux, d'ailleurs, et un autre exemple ici (comptes Twitter des eurodéputés). Les deux exemples sont courts et faciles, et basés sur des sites Internet qui, avec un peu de chance, devraient rester disponibles.

Un autre exemple ici, par Alexandre Hobeika et Étienne Ollion.

briatte avatar Jul 03 '15 16:07 briatte

Je viens de commit un brouillon pour ce chapitre : 22b045ab4446bbdc62830fab765f182a65cfc30b -- mais ne suis pas certain que l'exemple soit le plus approprié. Let me know what you think :)

P.S. truc difficile à gérer pour ce chapitre : la gestion des données récupérées. Pour ne pas avoir à les scraper à chaque fois, est-ce qu'on peut les mettre en cache ? Le dossier fait < 200 KB.

briatte avatar Jul 16 '15 17:07 briatte

En tout cas j'aime bien le thème. Ce qui manque peut-être c'est de savoir à quoi pourrait nous servir les données collectées ensuite. Juste pour bien comprendre que le scraping c'est juste une étape de collecte avant de se lancer dans certaines analyses.

Faut-il présenter un peu plus ce qu'est le scraping ? Le type de choses qu'on peut récupérer sur Internet ? A quoi ca peut servir (par exemple analyses sociologiques, etc.)

Pas de soucis pour une mise en cache. Dans data\ ? Ou veux tu que ce soit recalculé lors d'un Build ?

Quelques détails :

  • je ne suis pas sûr que tout le monde connait le scraping. Est-ce ca vaudrait le coup d'avoir un titre plus explicite ? par exemple : Scraping ou l'extration de données à partir d'Internet
  • Il y a une page wikipedia fr pour scraping https://fr.wikipedia.org/wiki/Web_scraping
  • la vieille discussion <- vs =
  • je ferai une petite note (div) pour rappeler ce que signifie %>% (comme on dit une redite ne fait pas de mal et tu ajoutes un lien vers le chapitre sur dplyr)
  • En introduction, il me semble essentiel de mettre un encadré important et d'expliquer qu'il est nécessaire d'avoir un minimum de connaissances à propos du HTML avant de se lancer dans du scraping, et renvoyer vers quelques ressources extérieures adpatées. La note de base de page perdues au milieu du texte n'est pas lisible.
  • ajouter un petit glimpse à la fin pour un aperçu du résultat ?

Pour info, j'ai le warning suivant

d1$date = parse_date_time(d1$date, "%d %m %Y", locale = "fr_FR") %>%
  as.Date
Warning in Sys.setlocale("LC_TIME", locale):
la requête OS pour spécifier la localisation à
"fr_FR" n'a pas pu être honorée

Je suis sous Windows. Un truc à creuser ? Une note explicative ?

larmarange avatar Jul 16 '15 20:07 larmarange

Of course, je viens de tomber sur cette discussion https://github.com/hadley/lubridate/issues/194 Sous Windows il faut utiliser "french".

A mon avis, il faut faire un encadré pour expliquer ce point précis.

Faut-il adapter le code à coup de test sur Sys.info()["sysname"] ?

larmarange avatar Jul 16 '15 20:07 larmarange

if (Sys.info()["sysname"] == "Windows") {
  locale <- "french"
} else  {
  locale <- "fr_FR"
}

larmarange avatar Jul 16 '15 20:07 larmarange

Concernant la gestion du cache, toutes mes excuses, je n'avais pas compris que tu faisais référence au système de cache natif de knitr, ce qui effectivement est le plus simple car le système détecte tout seul s'il faut recalculer.

Du coup j'ai fait ce commit : https://github.com/larmarange/analyse-R/commit/50d3274325df5af2e6efc1473a2a2379cf381c2d

Quel que soit le fichier, le cache est est mis dans un sous-répertoire cache/nom-du-fichier/ et ce sous-répertoire n'est pas versionné. Ca accélère ce qui se passe sur ton propre PC mais le cache n'est pas propagé sur GitHub.

Je me demande si ça ne vaudrait pas le coup en fait d'activer le cache par défaut pour tous les chapitres (avec cache = TRUE dans les options communes). Ca serait un sacré gain de temps lors de la reconstruction de tout le site.

larmarange avatar Jul 17 '15 06:07 larmarange

Lien à ajouter dans une section Aller plus loin : http://data.hypotheses.org/516

larmarange avatar Jul 17 '15 06:07 larmarange

Si le thème te plaît, le résultat du scrape dans ce cas précis peut être ceci :

C'est un réseau de co-occurrences des thèmes des trois blogs.

Deux autre exemples possibles pour le chapitre sont cités dans mon premier message. À voir :)

briatte avatar Jul 18 '15 20:07 briatte

Largement de qui faire un autre chapitre !!!

larmarange avatar Jul 19 '15 06:07 larmarange

@briatte Hello, tu vas bien ?

Pour info : https://github.com/larmarange/analyse-R/discussions/166#discussioncomment-2150121

Le site Confusionnisme.info n'est plus accessible, ce qui rends impossible de reproduire les différentes étapes du cours !

Veux-tu jeter un oeil à cela ?

larmarange avatar Feb 10 '22 15:02 larmarange