{"id":41870,"date":"2020-02-17T11:17:15","date_gmt":"2020-02-17T08:17:15","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/ustanovka-or-tools-s-scip-i-glpk-v-virtualnoe-okruzhenie-python-3-7-na-linux"},"modified":"2020-02-17T11:17:15","modified_gmt":"2020-02-17T08:17:15","slug":"ustanovka-or-tools-s-scip-i-glpk-v-virtualnoe-okruzhenie-python-3-7-na-linux","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/ustanovka-or-tools-s-scip-i-glpk-v-virtualnoe-okruzhenie-python-3-7-na-linux","title":{"rendered":"Installation d'or-tools avec SCIP et GLPK dans un environnement virtuel Python 3.7 sous Linux","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>J'ai d\u00e9cid\u00e9 de participer \u00e0 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kaggle.com\/c\/santa-workshop-tour-2019\">une comp\u00e9tition<\/a><\/noindex> et j'avais besoin d'utiliser des paquets pour r\u00e9soudre des probl\u00e8mes d'optimisation. J'ai choisi l'outil or-tools de Google, qui est une interface pour diff\u00e9rents solveurs. Il contient plusieurs outils d'optimisation, mais les cr\u00e9ateurs d\u00e9clarent la prise en charge de certains paquets externes, y compris les commerciaux Gurobi et CPLEX. Cependant, nous ne sommes pas riches, et nous utiliserons les gratuits SCIP et GLPK (qui sont d\u00e9velopp\u00e9s localement, d'ailleurs). \u00c0 ma grande surprise, je n'ai trouv\u00e9 aucune instruction sur comment faire fonctionner tout cela dans un environnement virtuel Python, ni dans notre segment ni dans le segment anglophone d'Internet, et j'ai d\u00fb prendre un peu de temps. Pour ceux qui sont press\u00e9s, lisez tout de suite <noindex><a rel=\"nofollow\" href=\"#guide\">ici<\/a><\/noindex>, les autres peuvent d\u00e9couvrir la qualit\u00e9 discutable de ma graphomanie, d\u00e9crivant les p\u00e9rip\u00e9ties de l'installation du logiciel de Google. Oui, j'ai oubli\u00e9 de dire tout de suite que tout a \u00e9t\u00e9 install\u00e9 sur Manjaro Linux.<\/p>\n<p><img decoding=\"async\" alt=\"Installation d&#039;or-tools avec SCIP et GLPK dans un environnement virtuel Python 3.7 sous Linux\" src=\"\/wp-content\/uploads\/2020\/02\/d65bca44558d794b0fc6ff0e911725fc.jpeg\" style=\"display:block;margin: 0 auto;\" \/><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Premiers pas<\/h2>\n<p>\nTous les trois paquets existent dans le d\u00e9p\u00f4t Python, donc on les installe via pip.<\/p>\n<p>Chacun d'eux a sa propre interface, et or-tools a \u00e9t\u00e9 choisi justement pour essayer diff\u00e9rents paquets, sans r\u00e9\u00e9crire substantiellement le programme, donc l'objectif est que or-tools connecte ces solveurs et permette de les ex\u00e9cuter via lui-m\u00eame. Et que pensez-vous ? Or-tools install\u00e9 via pip ne voit pas les solveurs install\u00e9s via pip, et eux ne le voient pas (qui l'aurait cru). Donc, il faut jeter un \u0153il \u00e0 ce que disent les <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.google.com\/optimization\/install\/python\/source_linux\">documentation<\/a><\/noindex>.<br \/>\nDans la documentation, il est dit qu'il faut compiler \u00e0 partir des sources pour que or-tools puisse se connecter aux paquets externes. Nous essayons de compiler, mais cela ne fonctionne pas, car les solveurs install\u00e9s via pip ne sont pas visibles. <br \/>\nPar cons\u00e9quent, les moyens les plus simples d'installer tous les paquets via pip ne fonctionnent pas, car or-tools ne tire pas les solveurs, et les solveurs n'installent pas les biblioth\u00e8ques comme or-tools le souhaite, tous vous envoient des erreurs, vous traitent d'idiot et se moquent de vous. <\/p>\n<p>Ensuite, dans <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.google.com\/optimization\/install\/python\/source_linux#install-the-scip-optimization-suite\">la documentation<\/a><\/noindex> il est dit qu'il faut compiler les solveurs \u00e0 partir des sources, puis compiler or-tools \u00e0 partir des sources. Dit et fait ! J'ai install\u00e9 SCIP, j'ai install\u00e9 GLPK, mais se pose la question non d\u00e9crite dans la documentation de comment installer or-tools dans un environnement virtuel. <\/p>\n<p>La seule commande \u00e9crite dans la documentation `make python` installe le paquet globalement sur le syst\u00e8me (surprenant, n'est-ce pas ?).<\/p>\n<p>Cependant, j'ai eu de la chance : lors de ma recherche d'ing\u00e9nierie par m\u00e9thode des singes infinis, j'ai accidentellement tap\u00e9 la commande `make help`, et j'ai obtenu une liste de toutes les options de compilation d'or-tools, parmi lesquelles se trouvait la possibilit\u00e9 de compiler un paquet wheel. C'est la commande `make python_package`, au fait (je la r\u00e9p\u00e9terai encore \u00e0 la fin). Alors, est-il temps de compiler et de lancer ?<\/p>\n<p><img decoding=\"async\" alt=\"Installation d&#039;or-tools avec SCIP et GLPK dans un environnement virtuel Python 3.7 sous Linux\" src=\"\/wp-content\/uploads\/2020\/02\/5d00d11acb95cf881605a43ec9b5f86f.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>Cherchons le probl\u00e8me<\/h2>\n<p>\nRien ne fonctionne lors de la compilation d'or-tools, il se plaint de mauvaises biblioth\u00e8ques GLPK.<\/p>\n<p><img decoding=\"async\" alt=\"Installation d&#039;or-tools avec SCIP et GLPK dans un environnement virtuel Python 3.7 sous Linux\" src=\"\/wp-content\/uploads\/2020\/02\/5a16f5dc082a46ee5cbcafa637de006f.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nLa compilation avec SCIP avec les param\u00e8tres de la documentation se passe bien, mais or-tools refuse toujours de fonctionner lors de l'importation.<\/p>\n<p><img decoding=\"async\" alt=\"Installation d&#039;or-tools avec SCIP et GLPK dans un environnement virtuel Python 3.7 sous Linux\" src=\"\/wp-content\/uploads\/2020\/02\/acd6917b68c320a9bee5e71875c1f035.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nJe n'ai pas trouv\u00e9 de solution \u00e0 ces probl\u00e8mes par moi-m\u00eame, donc je me suis dirig\u00e9 vers GitHub pour demander aux d\u00e9veloppeurs pourquoi l'installation selon leurs instructions g\u00e9n\u00e9rait des erreurs quelque part dans leur code.<\/p>\n<p><img decoding=\"async\" alt=\"Installation d&#039;or-tools avec SCIP et GLPK dans un environnement virtuel Python 3.7 sous Linux\" src=\"\/wp-content\/uploads\/2020\/02\/997062c260ba5569bb755bbe757615bd.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Hmm, merci pour les \u00e9claircissements<br \/>\n<\/i><br \/>\nEn attendant une r\u00e9ponse sur GitHub, je fouillais sur Internet, esp\u00e9rant trouver quelque chose qui pourrait m'aider. Et comme il est surprenant de constater, j'ai trouv\u00e9. C'\u00e9tait <noindex><a rel=\"nofollow\" href=\"http:\/\/or-tools.blogspot.com\/2017\/03\/linking-glpk-with-or-tools-on-unix.html\">blog<\/a><\/noindex> le chef de projet, o\u00f9 il \u00e9crivait comment relier GLPK \u00e0 or-tools. Et cette m\u00e9thode a enfin fonctionn\u00e9 ! Maintenant, si l'on compile tout sans SCIP, mais avec GLPK, on peut m\u00eame travailler avec \u00e7a. D\u00e9j\u00e0 un progr\u00e8s.<\/p>\n<p>Cependant, le chef de l'\u00e9quipe or-tools ne conseillait pas d'utiliser GLPK, disant que les r\u00e9sultats n'\u00e9taient pas tr\u00e8s bons, et qu'on souhaite tout de m\u00eame triompher de SCIP et le faire fonctionner. Le voisin <noindex><a rel=\"nofollow\" href=\"http:\/\/or-tools.blogspot.com\/2017\/03\/changing-way-we-link-with-scip.html\">post<\/a><\/noindex> dans son blog, m'a fait penser que le paquet de Google fonctionnait avec des versions sp\u00e9cifiques. Regardons <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.google.com\/optimization\/support\/release_notes#support-for-scip-6.0.0\">la liste des changements de versions<\/a><\/noindex> et nous y voyons une indication explicite de la version 6.0.0. Bien qu'il soit mentionn\u00e9 dans le makefile que la version est 6.0.2, nous essayons d'installer une version ant\u00e9rieure et voil\u00e0 !<\/p>\n<p>Et maintenant, encore une fois, la s\u00e9quence d'actions qui fonctionne.<br \/>\n<noindex><a rel=\"nofollow\" name=\"guide\"><\/a><\/noindex><\/p>\n<h2>S\u00e9quence d'installation<\/h2>\n<p><\/p>\n<ol>\n<li>T\u00e9l\u00e9charger l'archive SCIP, en vous assurant que <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.google.com\/optimization\/support\/release_notes\">ici<\/a><\/noindex> la prise en charge de la version que vous t\u00e9l\u00e9chargez est clairement indiqu\u00e9e (dans mon cas <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.google.com\/optimization\/support\/release_notes#support-for-scip-6.0.0\">developers.google.com\/optimization\/support\/release_notes#support-for-scip-6.0.0<\/a><\/noindex>) et d\u00e9compresser.<\/li>\n<li>T\u00e9l\u00e9charger GLPK (\u00e0 l'heure de ce post, la derni\u00e8re version est 4.65) et d\u00e9compresser.<\/li>\n<li>Installer SCIP avec la commande\n<pre><code class=\"bash\">make GMP=false READLINE=false TPI=tny ZIMPL=false scipoptlib install INSTALLDIR=\/scipoptsuite-6.0.0\n<\/code><\/pre>\n<\/li>\n<li>Installer GLPK avec la commande :\n<pre><code class=\"bash\">. \/configure --prefix= --with-pic --enable-shared\nmake\nmake install\n<\/code><\/pre>\n<\/li>\n<li>T\u00e9l\u00e9charger OR-Tools depuis GitHub\n<pre><code class=\"bash\">git clone https:\/\/github.com\/google\/or-tools<\/code><\/pre>\n<\/li>\n<li>Installer OR-Tools avec les commandes :\n<pre><code class=\"bash\">make third_party\nmake python_package\n<\/code><\/pre>\n<p>\nSi la derni\u00e8re commande ne fonctionne pas, installez wheel avec la commande :<\/p>\n<pre><code class=\"bash\">pip install wheel<\/code><\/pre>\n<\/li>\n<li>Activez l'environnement virtuel, acc\u00e9dez au dossier contenant le package Python et installez-le \u00e0 partir de l\u00e0.\n<p>S'il est n\u00e9cessaire d'installer non pas dans un environnement virtuel, mais globalement pour tout le syst\u00e8me au lieu de :<\/p>\n<pre><code class=\"bash\">make python_package<\/code><\/pre>\n<p>\nex\u00e9cutez la commande :<\/p>\n<pre><code class=\"bash\">make python\n<\/code><\/pre>\n<\/li>\n<\/ol>\n<p>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/488346\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0435\u0448\u0438\u043b \u044f \u043f\u043e\u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u043e\u0440\u0435\u0432\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0438 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438. \u0412\u044b\u0431\u0440\u0430\u043b \u0433\u0443\u0433\u043b\u043e\u0432\u0441\u043a\u0438\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 or-tools, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u0435\u0448\u0430\u0442\u0435\u043b\u0435\u0439 (\u0438\u043b\u0438 \u0440\u0435\u0448\u0430\u043b? solver\u043e\u0432?). \u041e\u043d \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0432 \u0441\u0435\u0431\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438, \u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u0437\u0430\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u043c, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0438\u0445 Gurobi \u0438 CPLEX. \u041e\u0434\u043d\u0430\u043a\u043e \u043b\u044e\u0434\u0438 \u043c\u044b \u043d\u0435\u0431\u043e\u0433\u0430\u0442\u044b\u0435, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":41871,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-41870","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0420\u0435\u0448\u0438\u043b \u044f \u043f\u043e\u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u043e\u0440\u0435\u0432\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0438 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/ustanovka-or-tools-s-scip-i-glpk-v-virtualnoe-okruzhenie-python-3-7-na-linux\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 or-tools \u0441 SCIP \u0438 GLPK \u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 Python 3.7 \u043d\u0430 Linux | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0435\u0448\u0438\u043b \u044f \u043f\u043e\u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u043e\u0440\u0435\u0432\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0438 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/ustanovka-or-tools-s-scip-i-glpk-v-virtualnoe-okruzhenie-python-3-7-na-linux\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-02-17T08:17:15+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-17T08:17:15+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Installation des or-tools avec SCIP et GLPK dans un environnement virtuel Python 3.7 sur Linux | ProHoster","description":"J'ai d\u00e9cid\u00e9 de participer au concours et il m'a fallu utiliser des packages pour r\u00e9soudre des probl\u00e8mes d'optimisation.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/ustanovka-or-tools-s-scip-i-glpk-v-virtualnoe-okruzhenie-python-3-7-na-linux","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 or-tools \u0441 SCIP \u0438 GLPK \u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 Python 3.7 \u043d\u0430 Linux | ProHoster","og:description":"\u0420\u0435\u0448\u0438\u043b \u044f \u043f\u043e\u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u043e\u0440\u0435\u0432\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0438 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c \u0434\u043b\u044f \u043d\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0434\u0430\u0447 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438.","og:url":"https:\/\/prohoster.info\/fr\/blog\/ustanovka-or-tools-s-scip-i-glpk-v-virtualnoe-okruzhenie-python-3-7-na-linux","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-02-17T08:17:15+00:00","article:modified_time":"2020-02-17T08:17:15+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"41870","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:08:32","updated":"2022-09-28 10:29:00","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/41870","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=41870"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/41870\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/41871"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=41870"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=41870"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=41870"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}