Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
briatte opened this issue Jul 3, 2015 · 9 comments
Open

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

briatte opened this issue Jul 3, 2015 · 9 comments
Assignees

Comments

@briatte
Copy link
Collaborator

briatte commented Jul 3, 2015

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 briatte self-assigned this Jul 5, 2015
@briatte
Copy link
Collaborator Author

briatte commented Jul 16, 2015

Je viens de commit un brouillon pour ce chapitre : 22b045a -- 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.

@larmarange
Copy link
Owner

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
Copy link
Owner

Of course, je viens de tomber sur cette discussion tidyverse/lubridate#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
Copy link
Owner

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

@larmarange
Copy link
Owner

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 : 50d3274

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
Copy link
Owner

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

@briatte
Copy link
Collaborator Author

briatte commented Jul 18, 2015

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 :)

@larmarange
Copy link
Owner

Largement de qui faire un autre chapitre !!!

@larmarange
Copy link
Owner

@briatte Hello, tu vas bien ?

Pour info : #166 (comment)

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 larmarange reopened this Feb 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants