Aspirer les médecins d’Ameli

L’information, à partir du moment où elle est disponible sur un site Internet est —plus ou moins— facilement copiable et récupérable… Prenons par exemple le cas de l’Assurance maladie. Elle propose sur son site un service prénommé Ameli-direct qui permet, et c’est louable, de trouver près de chez soi, des médecins spécialistes ou généralistes et surtout de connaître des informations basiques à leur propos : tarifs pratiqués, secteur conventionnel, prise en charge de la Carte vitale…

L’Assurance-maladie (Cnam) fournit des informations sur les soins de manière assez simple il faut le dire. Inscrire le nom, le département ou la spécialité et lancer la recherche. Mais elle ne propose pas une liste des médecins de son département, pour trouver le moins cher et le plus proche, par exemple. Bref, aucune version compilée des données n’est à disposition. En février, Xavier Bertrand a demandé à la Cnam et au Conseil de l’ordre des médecins d’intervenir sur la question des dépassements d’honoraire. Il est donc légitime de se poser la question de ces honoraires. Et Ameli-direct fournit le détail, ou presque. Car  la liste complète n’est pas publique, ni celle des quelques 250 professionnels susceptibles d’être déférés devant le conseil de l’ordre des médecins pour dépassements excessifs d’honoraires, que la Cnam et l’Ordre ne peuvent pas communiquer.

Il s’agit donc, pour s’en faire une idée, de récupérer sur Ameli-direct les informations disponibles à tous. De manière automatisée pour gagner un peu de temps et ne pas relever un à un les noms et les honoraires pratiqués. Rien d’illégal, les informations sont disponibles sur le site. Hélas, le site ne permet pas d’afficher le nom de tous les médecins. Il faut donc identifier comment s’affichent les résultats d’une recherche, comment se construit une “page médecin” et établir un “protocole”.

Le protocole de récupération

Pour trouver son chemin dans la foule de données, nous avons décidé de ne se concentrer que sur les médecins listés pratiquant une consultation. Lorsque l’on tape “consultation” puis recherche dans l’espace de recherche de Ameli-direct, une bulle affiche :

Plus de 500 résultats : veuillez préciser votre recherche.

Étant donné que le site est en Flash, il est possible qu’il accède aux données par le biais d’un fichier xml. Pour l’identifier, nous avons essayé utiliser les “Outils de développement” de Chrome ou IE ou Firebug dans Firefox. Cet outil se penche sur les transferts de fichiers, les scripts tournant en tâche de fond et autres. Que dit-il d’Ameli-direct lors d’une recherche ?

Le premier fichier à se charger est un fichier nommé “recherche.html”. Pas de xml donc. Un fichier html en tâche de fond qui effectue la recherche et renvoie les résultats, ou le fait qu’il y en a trop. Comment fonctionne-t-il ? En cliquant sur le fichier, penchons nous sur les détails.

Le fichier utilise des cookies —listés après “Cookie”— et envoie des données grâce à des paramètres —listés dans la partie “Form data”—. Il faut donc construire un fichier qui va aller toquer à la porte de recherche.html avec les cookies et les données correctes. J’ai choisi pour ce faire d’utiliser cURL en php. En pensant à mettre un user agent —les informations détaillant le navigateur accédant au fichier— qui corresponde à un navigateur traditionnel, au cas où cela soit vérifié. En pensant à créer les cookies dans un fichier. En précisant les bons critères. Tout ça, en partie grâce aux bons conseils de nkb.

Une fois fait, la méthode donne une page avec 10 résultats, il faut relancer la méthode en ajoutant results_per_page=0 pour afficher tous les résultats dans un seul fichier html. Ensuite, en filtrant avec des expressions régulières, on peut récupérer : l’url de la fiche-médecin, le nom, le secteur et l’adresse. Nous avons versé tout ça à la base de données en triant par département. Au cas où le département héberge plus de 500 médecins, nous avons filtré les hommes, puis les femmes. Enfin, s’il y avait toujours trop de médecins, le filtre a été fait par code postal.

Avec l’url de la fiche médecin, on tombe sur le prix pratiqué pour la consultation, ainsi que le prix de base remboursé par la Sécu. Cela est également versé dans la base, à une vitesse approximative de une fiche-médecin à la seconde, sachant qu’il y en a plus de 5 000 à Paris. Soyons à ce titre heureux qu’il n’y ait à ce jour aucune limitation de l’adresse IP par le service Ameli-direct !

>> à suivre, la représentation de ces données

8 thoughts on “Aspirer les médecins d’Ameli

  1. Pingback: Étaler Ameli sur une carte | misc.alphoenix.net

  2. Bonjour,
    tout d’abord merci pour cet article et vos recherches !!
    j’ai toute fois une petite question, pourriez vous m’éclairer sur l’utilisation du cURL car je ne comprend pas bien comment procéder…
    d’avance merci pour votre réponse, positive ou négative.

    JP

  3. Pingback: [datajournalisme] 7 idées pour la presse locale « Papier Brouillon

  4. Pingback: [datajournalisme] La liste des subventions 2012 de la Politique Agricole Commune « Papier Brouillon

  5. Bonjour, j’essaye de recuperer la lise des infirmiers.
    j’en ai récupéré 30.000, et je continue à la main code postal par code postal, quelqu’un a une idée pour aller plus vite ?

  6. Pingback: Data journalisme, premiers pas | Une Trace

  7. POUVEZ VOUS ME CONTACTER PAR MAIL
    AFIN QUE JE PUISSE VOUS POSER QUELQUES QUESTIONS

Leave a Reply

Your email address will not be published. Required fields are marked *