{"id":516,"date":"2013-04-06T15:21:16","date_gmt":"2013-04-06T13:21:16","guid":{"rendered":"http:\/\/data.hypotheses.org\/?p=516"},"modified":"2013-04-06T18:43:54","modified_gmt":"2013-04-06T16:43:54","slug":"collecter-des-donnes-sur-wikipedia-lexemple-des-salles-du-culte-musulman-a-paris-2","status":"publish","type":"post","link":"https:\/\/data.hypotheses.org\/516","title":{"rendered":"Collecter des donn\u00e9s sur Wikip\u00e9dia : l&#8217;exemple des salles du culte musulman \u00e0 Paris"},"content":{"rendered":"<p>En d\u00e9pit de critiques r\u00e9currentes, on trouve des informations tr\u00e8s utiles sur l&#8217;encyclop\u00e9die en ligne <em>Wikip\u00e9dia<\/em>. Et, \u00e0 condition de savoir les lire (<em>i.e.<\/em> de pratiquer la critique des sources), elle peut constituer une mine d&#8217;or pour les chercheurs. D&#8217;aileurs, vous pourriez y contribuer, ou <a href=\"https:\/\/dons.wikimedia.fr\/civicrm\/contribute\/transact?reset=1&amp;id=2&amp;pk_campaign=OLD\">contribuer<\/a>.<\/p>\n<p>Comment faire pour collecter automatiquement ces informations\u00a0? De la m\u00eame mani\u00e8re qu&#8217;on l&#8217;a d\u00e9j\u00e0 fait, mais le site impose de respecter certaines r\u00e8gles. Examinon-les en repartant de l&#8217;exemple des \u00e9difices religieux \u00e0 Paris, trait\u00e9 dans <a href=\"http:\/\/data.hypotheses.org\/?p=317\">un pr\u00e9c\u00e9dent billet<\/a>. Cette fois, on s&#8217;int\u00e9resse au culte musulman.<\/p>\n<p><!-- On aborde trois points\u00a0:\n\n1. Rep\u00e9rer des informations sous forme de tableau dans une page Wikip\u00e9dia,\n2. D\u00e9ontologie de la collecte automatis\u00e9e de donn\u00e9es et pr\u00e9sentation de soi,\n3. Comment contourner le probl\u00e8mes des caract\u00e8res accentu\u00e9s.\n\nCommen\u00e7ons donc par la page web que l'on a choisie comme exemple. --><\/p>\n<h2 id=\"lexempledeslieuxdecultemusulmanparis\">L&#8217;exemple des lieux de culte musulman \u00e0 Paris<\/h2>\n<p>Parmi les diff\u00e9rents sites qui r\u00e9pertorient <a href=\"http:\/\/fr.wikipedia.org\/wiki\/Liste_des_mosqu%C3%A9es_de_Paris\">lieux du culte musulman \u00e0 Paris<\/a>, <em>Wikip\u00e9dia<\/em> semble bien renseign\u00e9. Une rapide consultation montre une liste d\u2019environ 75 sites, qu\u2019on va r\u00e9cup\u00e9rer afin de pouvoir la traiter (statistiques, visualisation), ou la sauvegarder. Assur\u00e9ment, on n\u2019est pas en mesure de dire si elles sont fr\u00e9quent\u00e9es, toujours actives, ou si la liste est compl\u00e8te (mais des gens <a title=\"GSRL\" href=\"http:\/\/www.gsrl.cnrs.fr\/\">ici<\/a> ou <a title=\"DRES\" href=\"http:\/\/dres.misha.cnrs.fr\">l\u00e0<\/a> ont s\u00fbrement une id\u00e9e &#8211; ainsi que l\u2019administration fran\u00e7aise, comme le montrait la th\u00e8se de <a title=\"Solenne Jouanneau\" href=\"http:\/\/sage.unistra.fr\/membres\/enseignants-chercheurs\/jouanneau-solenne\/\">S. Jouanneau<\/a>).<\/p>\n<p>Et on peut remarquer au passage une distinction qu\u2019on ne retrouve pas chez d\u2019autres groupes religieux plus \u00e9tablis : plus de la moiti\u00e9 des endroits recens\u00e9s sont des \u201csimples\u201d salles de pri\u00e8res, et pas des \u00e9difices sp\u00e9cifiquement religieux (ce qui a s\u00fbrement trait \u00e0 la croissance diff\u00e9rentielle des groupes religieux, comme \u00e0 leur histoire).<\/p>\n<p>Sur <em>Wikip\u00e9dia<\/em>, les donn\u00e9es sont souvent pr\u00e9sent\u00e9es sous forme de tableaux. Ceux-ci sont d\u00e9crits par une balise <code>&lt;table&gt;<\/code> dans le <a href=\"http:\/\/data.hypotheses.org\/243\">code source<\/a>. Dans ce cas, leur extraction est tr\u00e8s simple, gr\u00e2ce \u00e0 la fonction <code>readHTMLTable<\/code> (pr\u00e9sent\u00e9e <a href=\"http:\/\/francoisguillem.fr\/2011\/04\/extraire-des-donnees-dune-page-web-avec-r-1-les-tableaux\/\">ici<\/a> \u00e9galement), que l&#8217;on va utiliser.<\/p>\n<p><a href=\"http:\/\/data.hypotheses.org\/files\/2012\/12\/2013-01-30-lieux_islam_paris_wikipedia.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/data.hypotheses.org\/files\/2012\/12\/2013-01-30-lieux_islam_paris_wikipedia-300x203.png\" alt=\"\" title=\"2013-01-30 lieux_islam_paris_wikipedia\" width=\"300\" height=\"203\" class=\"aligncenter size-medium wp-image-457\" srcset=\"https:\/\/data.hypotheses.org\/files\/2012\/12\/2013-01-30-lieux_islam_paris_wikipedia-300x203.png 300w, https:\/\/data.hypotheses.org\/files\/2012\/12\/2013-01-30-lieux_islam_paris_wikipedia-500x339.png 500w, https:\/\/data.hypotheses.org\/files\/2012\/12\/2013-01-30-lieux_islam_paris_wikipedia.png 1040w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Le premier &#8220;tableau&#8221; de la page est la table des mati\u00e8res de l&#8217;article, donc on s&#8217;int\u00e9resse au deuxi\u00e8me (mosqu\u00e9es), et au troisi\u00e8me (salles de pri\u00e8re). La fonction <code>readHTMLTable<\/code> peut s&#8217;utiliser directement avec l&#8217;URL (l&#8217;adresse) de la page, dans ce cas on extrait les tableaux comme ceci\u00a0:<\/p>\n<pre><code># Modules\r\nlibrary(RCurl)\r\nlibrary(XML)\r\n\r\n# Adresse de la page Wikip\u00e9dia\r\nlieux.islam.url &lt;-\r\n  &quot;http:\/\/fr.wikipedia.org\/wiki\/Liste_des_mosqu%C3%A9es_de_Paris&quot;\r\n\r\n# R\u00e9cup\u00e9ration directe des tableaux\r\nlieux.islam.tableaux &lt;- readHTMLTable(lieux.islam.url)\r\nmosquees      &lt;- lieux.islam.tableaux[[2]]\r\nsalles.priere &lt;- lieux.islam.tableaux[[3]]\r\n<\/code><\/pre>\n<p>Si on v\u00e9rifie le contenu de <code>salles.priere<\/code>, on peut v\u00e9rifier que \u00e7a fonctionne. Reste un probl\u00e8me d&#8217;accents, qui se traduit par des choses comme <code>\\u0080<\/code> (Mac OS) ou des caract\u00e8res bizarres (Windows) et des avertissements \u00e9sot\u00e9riques comme &#8220;<code>it is not known that wchar_t is Unicode on this platform<\/code>&#8221;. Il s&#8217;agit d&#8217;un malentendu d&#8217;<em>encodage<\/em>, c&#8217;est-\u00e0-dire d&#8217;interpr\u00e9tation des caract\u00e8res accentu\u00e9s &#8211; qu&#8217;on traitera en d\u00e9tail prochainement\u00a0<a href=\"1\" id=\"fnref:1\" title=\"see footnote\" class=\"footnote\">[1]<\/a>.<\/p>\n<p>Pour y rem\u00e9dier, on va adopter une proc\u00e9dure l\u00e9g\u00e8rement plus longue. Cela va nous permettre \u00e9galement de se conformer aux conditions d&#8217;utilisation de <em>Wikip\u00e9dia<\/em>, et plus g\u00e9n\u00e9ralement aux bonnes pratiques de collecte automatique de donn\u00e9es.<\/p>\n<h2 id=\"collecterquellesconditions\">Collecter, \u00e0 quelles conditions\u00a0?<\/h2>\n<p>Collecter automatiquement des donn\u00e9es peut \u00eatre grisant, mais il ne faut pas oublier que l&#8217;op\u00e9ration peut \u00eatre co\u00fbteuse pour l&#8217;h\u00e9bergeur (en termes de bande passante, donc d&#8217;infrastructures mat\u00e9rielles), et que le droit prot\u00e8ge la propri\u00e9t\u00e9 des donn\u00e9es\u00a0: ce n&#8217;est pas parce que vous pouvez les consulter qu&#8217;elles sont \u00e0 vous. Les sites peuvent, au-del\u00e0 du droit, se prot\u00e9ger par divers outils techniques. Certains vous bloqueront l&#8217;acc\u00e8s en cas de non-respect des conditions d&#8217;utilisation\u00a0; il est donc vivement conseill\u00e9 de lire celles-ci pour savoir ce que vous \u00eates autoris\u00e9 \u00e0 faire, et comment.<\/p>\n<p>Chez <em>Wikip\u00e9dia<\/em>, les donn\u00e9es sont librement accessibles, aux conditions des licences <a href=\"http:\/\/creativecommons.org\/licenses\/by-sa\/3.0\/deed.fr\">Creative Commons<\/a> et <a href=\"http:\/\/www.gnu.org\/copyleft\/fdl.html\">GNU Free Documentation License<\/a>\u00a0: en gros, citer vos sources, ne pas en faire un usage commercial, etc. (un peu comme pour ce blog). Concernant la collecte automatis\u00e9e de donn\u00e9es, <a title=\"Wikipedia User-Agent Policy\" href=\"http:\/\/meta.wikimedia.org\/wiki\/User-Agent_policy\">la r\u00e8gle<\/a> veut qu&#8217;on se pr\u00e9sente, qu&#8217;on donne les moyens au webmaster de vous contacter par email, et qu&#8217;on \u00e9vite de revenir trop r\u00e9guli\u00e8rement. \u00c0 d\u00e9faut, l&#8217;acc\u00e8s vous sera bloqu\u00e9 apr\u00e8s quelques requ\u00eates. On va donc utiliser des fonctions qui permettent de charger des pages web tout en envoyant nos coordonn\u00e9es au serveur.<\/p>\n<p>Pour cela, et toujours avec R, on prend un chemin d\u00e9coup\u00e9 en plusieurs \u00e9tapes. Les fonctions de tr\u00e8s &#8220;haut niveau&#8221;, c&#8217;est-\u00e0-dire qui font beaucuop d&#8217;op\u00e9rations complexes en une seule fois, ne permettent en effet pas toujours de contr\u00f4ler assez finement la communication avec le serveur. Notre programme commence donc par la pr\u00e9paration d&#8217;une ligne, appell\u00e9e <a href=\"http:\/\/fr.wikipedia.org\/wiki\/User-Agent\"><em>User-Agent<\/em><\/a>, qu&#8217;on envoie au serveur pour lui signaler notre identit\u00e9 (personnelle et logicielle) lorsqu&#8217;on lui demande une page\u00a0<a href=\"2\" id=\"fnref:2\" title=\"see footnote\" class=\"footnote\">[2]<\/a>.<\/p>\n<p>Ici, cette ligne est de la forme &#8220;<code>RCurl (mon.adresse@moi.net)<\/code>&#8221;, <em>RCurl<\/em> \u00e9tant le &#8220;navigateur&#8221; qu&#8217;on utilise. On la communique comme ceci\u00a0:<\/p>\n<pre><code># Modules utilis\u00e9s ici\r\nlibrary(RCurl)\r\nlibrary(XML)\r\n\r\n# Adresse (URL) de la page\r\nlieux.islam.url &lt;-\r\n  &quot;http:\/\/fr.wikipedia.org\/wiki\/Liste_des_mosqu%C3%A9es_de_Paris&quot;\r\n\r\n# Identifiant que l'on envoie \u00e0 Wikipedia pour se pr\u00e9senter\r\n# \u00c0 remplacer par votre email !\r\nmon.adresse.mail &lt;- &quot;mon.adresse@moi.net&quot;\r\n\r\n# Assemblage du message qui va \u00eatre envoy\u00e9\r\nidentifiant &lt;- paste(&quot;RCurl&quot;, &quot; (&quot;,\r\n                     mon.adresse.mail, &quot;)&quot;,\r\n                     sep=&quot;&quot;)\r\n\r\n# Requ\u00eate\r\npage.brute &lt;- getURL(url = lieux.islam.url,\r\n                     useragent = identifiant)\r\n\r\n# On traite ensuite cet objet, pour en analyser la structure\r\npage.lignes &lt;- readLines(tc &lt;- textConnection(page.brute))\r\n               close(tc)\r\npage.parsed &lt;- htmlTreeParse(page.lignes,\r\n                             useInternalNodes=TRUE,\r\n                             asText=TRUE)\r\n<\/code><\/pre>\n<p>La variable <code>page.brute<\/code> est le contenu de la page web charg\u00e9e, en HTML. On la transforme en lignes (<code>page.lignes<\/code>), puis on analyse sa structure (<em>parse<\/em>). On pourra ensuite appliquer la fonction de lecture simplifi\u00e9e des tableaux vue pr\u00e9c\u00e9demment. Mais avant cela on va enlever les accents du texte.<\/p>\n<h2 id=\"enleverlesaccents\">Enlever les accents<\/h2>\n<p>L&#8217;int\u00e9r\u00eat de cette proc\u00e9dure est d&#8217;avoir un contr\u00f4le fin sur les op\u00e9rations de t\u00e9l\u00e9chargement et de transformation de la page web. En particulier, on va pouvoir enlever les accents du texte, ce qui \u00e9vitera toute confusion d&#8217;encodage\u00a0<a href=\"3\" id=\"fnref:3\" title=\"see footnote\" class=\"footnote\">[3]<\/a>.<\/p>\n<p>On utilise ici <a href=\"http:\/\/data.hypotheses.org\/564\">une fonction que l&#8217;on a d\u00e9taill\u00e9e ailleurs<\/a>, et que l&#8217;on appelle <code>Unaccent()<\/code>.<\/p>\n<p>Le moment le plus propice pour appliquer cette fonction, dans les op\u00e9rations traitement de la page, est lorsqu&#8217;elle est sous forme de lignes, \u00e0 l&#8217;\u00e9tape <code>page.lignes<\/code>. Les accents (ou plut\u00f4t l&#8217;encodage) sont \u00e0 ce moment correctement trait\u00e9s.<\/p>\n<h2 id=\"leprogrammeintgral\">Le programme int\u00e9gral<\/h2>\n<p>On reprend ainsi les morceaux pr\u00e9sent\u00e9s plus haut. Au passage, on englobe les op\u00e9rations dont le r\u00e9sultat ne nous int\u00e9resse pas dans une fonction, ce qui \u00e9vite de les garder en m\u00e9moire.<\/p>\n<pre><code># Modules utiles\r\nlibrary(RCurl)\r\nlibrary(XML)\r\n\r\n# Adresse (URL) de la page\r\nlieux.islam.url &lt;-\r\n  &quot;http:\/\/fr.wikipedia.org\/wiki\/Liste_des_mosqu%C3%A9es_de_Paris&quot;\r\n\r\n# Identifiant que l'on enverra \u00e0 Wikipedia pour se pr\u00e9senter\r\n# \u00c0 remplacer par votre email !\r\nmon.adresse.email &lt;- &quot;mon.adresse@moi.net&quot;\r\n\r\n# D\u00e9finition d'une fonction d'enl\u00e8vement des accents (et des '`^&quot;)\r\nUnaccent &lt;- function(text) {\r\n  text      &lt;- gsub(&quot;['`^\\&quot;]&quot;, &quot; &quot;, text)\r\n  text.unac &lt;- iconv(text, to=&quot;ASCII\/\/TRANSLIT&quot;)\r\n  text.unac &lt;- gsub(&quot;['`^\\&quot;]&quot;, &quot;&quot;, text.unac)\r\n  return(text.unac)\r\n}\r\n\r\n# Fonction de t\u00e9l\u00e9chargement, enl\u00e8vement des accents,\r\n# et analyse (parsing) de la structure HTML\r\nGetUnaccentURL &lt;- function(url.page, email='') {\r\n  identifiant &lt;- paste(&quot;RCurl&quot;, &quot; (&quot;,\r\n                       email, &quot;)&quot;,\r\n                       sep=&quot;&quot;)\r\n  page.brute &lt;- getURL(url = url.page,\r\n                       useragent = identifiant)\r\n  page.lignes &lt;- readLines(tc &lt;- textConnection(page.brute))\r\n                 close(tc)\r\n  page.lignes.unac &lt;- Unaccent(page.lignes)\r\n  page.parsed &lt;- htmlTreeParse(page.lignes.unac,\r\n                               useInternalNodes=TRUE,\r\n                               asText=TRUE)\r\n  return(page.parsed)\r\n}\r\n\r\n# T\u00e9l\u00e9chargement de la page sur les lieux de culte musulman\r\nlieux.islam &lt;- GetUnaccentURL(url.page = lieux.islam.url,\r\n                              email = mon.adresse.email)\r\n\r\n# Extraction des tableaux\r\nmosquees      &lt;- readHTMLTable(lieux.islam, which=2)\r\nsalles.priere &lt;- readHTMLTable(lieux.islam, which=3)\r\n<\/code><\/pre>\n<p>Et voil\u00e0\u00a0<a href=\"4\" id=\"fnref:4\" title=\"see footnote\" class=\"footnote\">[4]<\/a>\u00a0!<\/p>\n<p>On peut maintenant cartographier ces r\u00e9sultats\u00a0: il suffit de <a href=\"http:\/\/data.hypotheses.org\/317\">g\u00e9ocoder les adresses<\/a> obtenues.<\/p>\n<p><a href=\"http:\/\/data.hypotheses.org\/files\/2012\/12\/islam-paris2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/data.hypotheses.org\/files\/2012\/12\/islam-paris2-300x300.png\" alt=\"\" title=\"islam-paris2\" width=\"300\" height=\"300\" class=\"aligncenter size-medium wp-image-365\" srcset=\"https:\/\/data.hypotheses.org\/files\/2012\/12\/islam-paris2-300x300.png 300w, https:\/\/data.hypotheses.org\/files\/2012\/12\/islam-paris2-150x150.png 150w, https:\/\/data.hypotheses.org\/files\/2012\/12\/islam-paris2-500x500.png 500w, https:\/\/data.hypotheses.org\/files\/2012\/12\/islam-paris2.png 1050w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p><!--\n    TODO faire en sorte que la carte corresponde mieux aux donn\u00e9es ; et la clarifier, en ne laissant que la Seine et les fronti\u00e8res des arrondissements, enlever les traits gris repr\u00e9sentant les lignes de m\u00e9tro\u2026\n--><\/p>\n<p>La distribution g\u00e9ographique appara\u00eet clairement localis\u00e9e dans l&#8217;Est parisien, soit les quartiers les moins bourgeois de la capitale\u00a0; plus le quinzi\u00e8me arrondissement. Les salles de pri\u00e8re sont globalement situ\u00e9es dans les m\u00eames quartiers que les mosqu\u00e9es, mais avec de fortes variations.<\/p>\n<div class=\"footnotes\">\n<hr \/>\n<ol>\n<li id=\"fn:1\">\n<p>En deux mots, le probl\u00e8me est le suivant\u00a0: les fichiers informatiques sont constitu\u00e9s d&#8217;octets, des blocs \u00e9l\u00e9mentaires de m\u00e9moire qui peuvent prendre chacun 256 valeurs. Pour communiquer un texte, il faut transformer la suite des caract\u00e8res en une s\u00e9rie d&#8217;octets, donc de valeurs enti\u00e8res entre 0 et 255, et pour cela utiliser un code. Si le code employ\u00e9 pour d\u00e9chiffrer la suite de ces valeurs num\u00e9riques n&#8217;est pas le m\u00eame que celui employ\u00e9 la cr\u00e9er, alors cela d\u00e9forme le texte initial. Les &#8220;encodages&#8221; d\u00e9signent, dans le sens usuel (qui est assez impr\u00e9cis), les diff\u00e9rents codes utilis\u00e9s, dont les plus g\u00e9n\u00e9raux se nomment ASCII, iso&#8211;8859&#8211;1 (ou Latin&#8211;1), ou encore Unicode \/ UTF&#8211;8. <a href=\"1\" title=\"return to article\" class=\"reversefootnote\">&#160;&#8617;<\/a><\/p>\n<\/li>\n<li id=\"fn:2\">\n<p>Cette m\u00e9thode n&#8217;est pas vraiment un outil de s\u00e9curisation\u00a0: il est possible de d\u00e9clarer une fausse identit\u00e9 sans difficult\u00e9, et le serveur n&#8217;a aucun moyen de le contr\u00f4ler. En r\u00e9alit\u00e9, elle est utilis\u00e9e sur le web avec une vis\u00e9e surtout pratique\u00a0: en d\u00e9clarant quel est votre navigateur et sa version (par exemple, &#8220;<code>Mozilla\/5.0 (X11; Ubuntu; Linux i686; rv : 15.0) Gecko\/20100101<\/code>&#8221; d\u00e9signe Firefox 15.0 pour Ubuntu), le serveur peut savoir comment vous envoyer une page adapt\u00e9e aux capacit\u00e9s techniques du navigateur, ou au format d&#8217;\u00e9cran de votre machine (ordinateur, t\u00e9l\u00e9phone mobile, tablette, etc.). <a href=\"2\" title=\"return to article\" class=\"reversefootnote\">&#160;&#8617;<\/a><\/p>\n<\/li>\n<li id=\"fn:3\">\n<p>Plus pr\u00e9cis\u00e9ment, les caract\u00e8res latins non-accentu\u00e9es, disons le clavier am\u00e9ricain, sont transcrits de la m\u00eame mani\u00e8re par les diff\u00e9rents encodages occidentaux standards. On peut donc se tromper d&#8217;encodage dans l&#8217;interpr\u00e9tation de tels textes, le r\u00e9sultat est toujours correct. D\u00e9saccentuer un texte permet ainsi de ne (presque) plus se soucier des questions. <a href=\"3\" title=\"return to article\" class=\"reversefootnote\">&#160;&#8617;<\/a><\/p>\n<\/li>\n<li id=\"fn:4\">\n<p>On aurait pu, en r\u00e9alit\u00e9, \u00e9viter d&#8217;enlever les accents, en appliquant la transformation suivante \u00e0 la fin (et avec un \u00e9quivalent pour <code>salles.priere<\/code>)\u00a0: <code>for(i in 1:length(mosquees)) {mosquees[[i]] &lt;- iconv(from=&quot;UTF-8&quot;, to=&quot;LATIN1&quot;, mosquees[[i]])}<\/code>. Celle-ci est applicable au r\u00e9sultat de l&#8217;extraction directe des tableaux, mais ne permet pas de se conformer \u00e0 la politique d&#8217;identification de <em>Wikip\u00e9dia<\/em>. <a href=\"4\" title=\"return to article\" class=\"reversefootnote\">&#160;&#8617;<\/a><\/p>\n<\/li>\n<\/ol>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>En d\u00e9pit de critiques r\u00e9currentes, on trouve des informations tr\u00e8s utiles sur l&#8217;encyclop\u00e9die en ligne Wikip\u00e9dia. Et, \u00e0 condition de savoir les lire (i.e. de pratiquer la critique des sources), elle peut constituer une mine d&#8217;or pour les chercheurs. D&#8217;aileurs, vous pourriez y contribuer, ou contribuer. Comment faire pour collecter automatiquement ces informations\u00a0? De la [&hellip;]<\/p>\n","protected":false},"author":3864,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_license":"","publish_to_discourse":"","publish_post_category":"","wpdc_auto_publish_overridden":"","wpdc_topic_tags":"","wpdc_pin_topic":"","wpdc_pin_until":"","discourse_post_id":"","discourse_permalink":"","wpdc_publishing_response":"","wpdc_publishing_error":"","footnotes":""},"categories":[847,577],"tags":[425926,10267,235817,382,1626],"ppma_author":[1198663],"class_list":["post-516","post","type-post","status-publish","format-standard","hentry","category-divers","category-outils","tag-cad","tag-culte","tag-encodage","tag-islam","tag-wikipedia"],"authors":[{"term_id":1198663,"user_id":3864,"is_guest":0,"slug":"aheo","display_name":"Alexandre Hobeika et \u00c9tienne Ollion","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/ebcef8ce04036297dafa1c6f7e45c2c3fa6161a6058cdee844345e0cb40472e0?s=96&d=blank&r=g","1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":""}],"_links":{"self":[{"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/posts\/516","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/users\/3864"}],"replies":[{"embeddable":true,"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/comments?post=516"}],"version-history":[{"count":5,"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/posts\/516\/revisions"}],"predecessor-version":[{"id":520,"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/posts\/516\/revisions\/520"}],"wp:attachment":[{"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/media?parent=516"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/categories?post=516"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/tags?post=516"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/data.hypotheses.org\/wp-json\/wp\/v2\/ppma_author?post=516"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}