Interroger l’API HAL avec Python

Il est certainement inutile de présenter l’archive ouverte multidisciplinaire HAL et son interface en ligne. Un usage moins visuellement saillant de cette archive est qu’il est également possible d’interagir avec sa base de données via une API, et notamment de l’interroger pour y effectuer des recherches selon divers critères puis de récupérer les résultats dans différents formats de données structurées.

Vous pouvez tout à fait utiliser Python pour interroger l’API de HAL et traiter les résultats obtenus.

Continuer la lecture de « Interroger l’API HAL avec Python »

Produire un corpus web format XML en 15 lignes de code

Pour effectuer certaines tâches, disposer d’un corpus textuel est très utile, voire indispensable : faire des essais pour un projet dont le corpus de travail est en cours de constitution, tester des scripts et traitements, prendre en main un nouvel outil et/ou le comparer à d’autres outils similaires…

Ce sont des usages qui relèvent principalement des phases préparatoires d’un projet, et pour lesquels il est surtout important de pouvoir construire un corpus rapidement et sans trop d’effort. Ce n’est pas grave si sa constitution n’est pas particulièrement précise puisqu’elle ne nécessite qu’un investissement limité et que les résultats obtenus n’ont pas vocation à être exploités en conditions réelles.

Je vous présente ici un script Python de web scraping très simple, qui vous permettra d’obtenir un corpus textuel au format XML tout à fait adapté à ce type d’utilisation.

Continuer la lecture de « Produire un corpus web format XML en 15 lignes de code »

Navigation web automatique avec Python

Dans cet article de la série d’articles consacrés à la cartographie de données linguistiques avec Python, la librairie selenium était exploitée pour réaliser des captures d’écran.

Ce n’est pas sa seule utilité : le webdriver de selenium permet de naviguer sur une page web de façon automatisée, et donc de mettre en place divers degrés d’interaction. Ceci peut être par exemple utile si, lors de la constitution d’un corpus web, vous voulez récupérer des contenus qui n’apparaissent qu’après un clic sur un élément de la page.

Voici deux exemples d’utilisation de selenium pour obtenir l’accès à des contenus qui nécessitent une interaction avec la page web.

Continuer la lecture de « Navigation web automatique avec Python »

Sélecteur 1000 langues en HTML

Pour créer des questionnaires ou formulaires relatifs à des projets de recherche en linguistique, il est parfois nécessaire de proposer à l’utilisateur/utilisatrice de renseigner une ou plusieurs langue(s) : par exemple pour indiquer quelle(s) langue(s) lui sont connues, lister les langues présentes dans son environnement à une période donnée, spécifier quelle(s) langue(s) elle ou il utilise selon les contextes, renseigner dans quelle(s) langue(s) est rédigé un document donné, etc. Il est beaucoup plus simple, notamment pour analyser ensuite les réponses fournies, de disposer d’une liste de référence affichée sous forme de liste déroulante plutôt que de recueillir une réponse sous forme de texte libre.

Je vous présente ici un sélecteur prêt à l’emploi, au format HTML, qui permet de faire un choix parmi une liste de 1193 langues différentes.

Continuer la lecture de « Sélecteur 1000 langues en HTML »

Restructurer un tableau CSV

Le module csv intégré par défaut à Python permet de lire et écrire facilement des fichiers CSV. Voyons ici comment modifier un tableau de données préalablement récupéré sur une page web, avec la seconde étape de traitement du tableau des variantes pa-hng and hm nai.

Continuer la lecture de « Restructurer un tableau CSV »

Extraire les données d’un tableau HTML

Il est assez confortable de lire des données présentées en tableau sur une page HTML, mais dans le cadre de projets de recherche la simple consultation des données est souvent insuffisante. Pour pouvoir traiter les données, il faut alors les extraire.

Voici une façon de le faire avec Python.

Continuer la lecture de « Extraire les données d’un tableau HTML »