{"id":74668,"date":"2024-05-14T11:03:45","date_gmt":"2024-05-14T09:03:45","guid":{"rendered":"https:\/\/kinsta.com\/es\/?p=74668&#038;preview=true&#038;preview_id=74668"},"modified":"2024-05-14T11:08:34","modified_gmt":"2024-05-14T09:08:34","slug":"como-desarrollar-herramienta-seo-con-ia-sin-saber-programar","status":"publish","type":"post","link":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/","title":{"rendered":"C\u00f3mo Desarrollar tu Propia Herramienta SEO con Inteligencia Artificial y Flask (Python), Sin Saber Programar"},"content":{"rendered":"<p>Quiz\u00e1s quieras crear tu propia herramienta SEO, o de cualquier otra cosa, pero te enfrentas a un obst\u00e1culo: no sabes programar. Podr\u00edas pensar que es totalmente imposible hacerlo sin conocimientos de programaci\u00f3n. En este art\u00edculo ver\u00e1s que, con ayuda de la inteligencia artificial, no s\u00f3lo puedes crear tu propia aplicaci\u00f3n personalizada para <a href=\"https:\/\/kinsta.com\/es\/blog\/wordpress-seo\/\">mejorar el SEO<\/a> de tus proyectos, sino que en el proceso puedes aprender a programar.<\/p>\n<p>Si te dedicas al <a href=\"https:\/\/kinsta.com\/es\/secciones\/consejos-marketing-online\/\">marketing online<\/a> te dar\u00e1s cuenta que no existe la herramienta que se ajuste perfectamente a tu caso de uso, entonces, \u00bfpor qu\u00e9 no construir la tuya propia?<\/p>\n<p>A lo largo de este art\u00edculo veremos, paso a paso, c\u00f3mo crear una herramienta que nos ayude a crear los t\u00edtulos optimizados para el SEO de nuestros art\u00edculos.<\/p>\n<p>Lo haremos usando Flask, un framework de Python. Repito, no te asustes si no sabes programar ver\u00e1s que no hace falta. Eso s\u00ed, para seguir el tutorial, har\u00e1 falta que te manejes sin miedo por la terminal de tu ordenador.<\/p>\n<p>Pero antes, os pongo en antecedentes, me llamo \u00d3scar, no s\u00e9 programar y os voy a ense\u00f1ar c\u00f3mo he creado mi propia herramienta para crear t\u00edtulos atractivos con <a href=\"https:\/\/kinsta.com\/es\/blog\/flask-vs-django\/#qu-es-flask\">Flask<\/a>, un framework de <a href=\"https:\/\/kinsta.com\/es\/secciones\/python\/\">Python<\/a>.<\/p>\n<p>Me dedico a generar ingresos gracias al <a href=\"https:\/\/kinsta.com\/es\/academia-afiliados\/que-es-el-marketing-de-afiliado-y-como-funciona\/\">marketing de afiliaci\u00f3n<\/a> desde hace m\u00e1s de 15 a\u00f1os. Para conseguirlo he creado muchas webs, al principio con <a href=\"https:\/\/kinsta.com\/es\/blog\/wordpress-vs-drupal\/\">Drupal<\/a> y desde hace unos a\u00f1os con WordPress. Aunque he creado muchas webs, siempre he tenido la sensaci\u00f3n de que si hubiera sabido programar pod\u00eda haber creado mejores proyectos.<\/p>\n<p>Todas mis webs siempre han sido informativas, es decir, blogs y portales de noticias. Pero siempre quise crear webs con m\u00e1s valor, webs en las que resolviera problemas concretos para mi audiencia, como por ejemplo, comparadores de precios en tiempo real o crear mis propias herramientas de estudio de palabras clave.<\/p>\n<p>Por lo que he de confesar que siempre he tenido una espinita clavada: <strong>aprender a programar<\/strong>.<\/p>\n<p>Hasta ahora, conoc\u00eda 2 formas de hacer aplicaciones:<\/p>\n<ul>\n<li>Code (Programando)<\/li>\n<li>NoCode (Utilizando herramientas NoCode)<\/li>\n<\/ul>\n<h2>Code<\/h2>\n<p>Si sabes programar en <a href=\"https:\/\/kinsta.com\/es\/php\/\">PHP<\/a>, <a href=\"https:\/\/kinsta.com\/es\/javascript\/\">Javascript<\/a> o <a href=\"https:\/\/kinsta.com\/es\/blog\/programacion-orientada-objetos-python\/\">Python<\/a>, entre otros, puedes hacer una web o aplicaci\u00f3n sin mayor problema.<\/p>\n<p>Pero siempre que he intentado aprender a programar lo he dejado. A veces, porque un proyecto m\u00e1s urgente se ha cruzado en mi camino, otras veces porque no sent\u00eda que avanzara lo suficientemente r\u00e1pido, el caso es que siempre que me he propuesto aprender a programar he fracasado.<\/p>\n<h2>NoCode<\/h2>\n<p>Si no sabes programar, lo puedes hacer con alguna de las muchas herramientas NoCode del mercado. Ya hemos hablado de algunas herramientas NoCode como WordPress o Drupal, pero hay muchas m\u00e1s. <a href=\"https:\/\/kinsta.com\/es\/blog\/que-es-wordpress\/\">WordPress<\/a> es una herramienta NoCode maravillosa para hacer webs pero si quieres crear tu propia aplicaci\u00f3n o herramienta a partir de WordPress es muy probable que tengas que programar.Hay otro tipo de herramientas NoCode enfocadas a crear aplicaciones como puede ser el caso de <a href=\"https:\/\/bubble.io\/\">Bubble<\/a>.<\/p>\n<p>Pero con las herramientas NoCode enfocadas en crear aplicaciones avanzadas tengo un problema y es que creo que el nombre de NoCode genera confusi\u00f3n.<\/p>\n<p><strong>NoCode no significa que no tengas que programar, significa que no tienes que codificar.<\/strong><\/p>\n<p>Es decir, te quita el trabajo de aprender la sintaxis de un lenguaje de programaci\u00f3n pero no te quita el trabajo de crear la l\u00f3gica del programa. Y en mi humilde opini\u00f3n, si tienes que aprender a crear la l\u00f3gica del programa est\u00e1s a un paso de aprender a programar. Otro problema asociado a crear una aplicaci\u00f3n con herramientas NoCode es que siempre estar\u00e1s mucho m\u00e1s limitado que si haces tu aplicaci\u00f3n con programaci\u00f3n. Pero como dec\u00eda un poco m\u00e1s arriba, \u201chasta ahora conoc\u00eda dos formas de hacer aplicaciones\u201d. Pero esto ha cambiado, desde la aparici\u00f3n de la inteligencia artificial hay una tercera forma de hacer aplicaciones:<\/p>\n<p><strong>Decirle a la IA que haga el c\u00f3digo por ti.<\/strong><\/p>\n<h2>Code Con IA<\/h2>\n<p>No vi venir que el NoCode ser\u00eda pedir Code a la Inteligencia Artificial.<\/p>\n<h3>Una nueva forma de aprender programaci\u00f3n<\/h3>\n<p>Aunque gracias a WordPress he sido capaz de crear un sinf\u00edn de proyectos online, siempre he cre\u00eddo que saber programar es como tener superpoderes.<\/p>\n<p>Y es aqu\u00ed donde la IA es incre\u00edble para aprender a programar. C\u00f3mo puedes pedirle a la IA que te haga el c\u00f3digo para tu proyecto real, la sensaci\u00f3n de avanzar es incre\u00edble, porque aprendes mientras ves resultados a corto plazo. Soy consciente de que aprender a programar de esta forma puede no ser lo m\u00e1s \u00f3ptimo a largo plazo ya que no conocer bien la teor\u00eda te va a pasar factura m\u00e1s adelante, sin embargo, al ver resultados tan r\u00e1pidos, tu motivaci\u00f3n por aprender a programar se va a disparar y aprender la teor\u00eda es menos doloroso.<\/p>\n<p>En este tutorial vamos a ver c\u00f3mo he creado una <a href=\"https:\/\/kinsta.com\/es\/secciones\/python\/\">herramienta SEO<\/a> con IA y Flask, y todo ello sin saber programar.<\/p>\n<h3>Desventajas de crear Aplicaciones con Ayuda de la IA<\/h3>\n<p>En este tutorial veremos c\u00f3mo somos capaces de crear una aplicaci\u00f3n con ayuda de ChatGPT pero hay ciertas consideraciones importantes que tenemos que tener en cuenta:<\/p>\n<ul>\n<li>La IA puede generar c\u00f3digo inseguro por lo que solo recomiendo hacerlo para aprender a programar.<\/li>\n<li>El programa puede que no est\u00e9 bien optimizado y consuma demasiados recursos o d\u00e9 problemas y dificulte su mantenimiento.<\/li>\n<li>Si no comprendes tu propio programa, tendr\u00e1s problemas para hacer cualquier cambio posterior, por f\u00e1cil que sea.<\/li>\n<\/ul>\n<h2>Crear mi propia herramienta SEO<\/h2>\n<p>Espero que se\u00e1is indulgentes con los errores que cometa. Soy plenamente consciente de que aprender &#8216;a programar de verdad&#8217; est\u00e1 muy lejos de lo que hago en este art\u00edculo, pero espero que os pueda contagiar las ganas de aprender, tal como me ha pasado a m\u00ed.<\/p>\n<p>En mi trabajo diario, como experto de marketing de afiliaci\u00f3n, siempre he querido tener herramientas personalizadas con mis necesidades concretas. \u00a0A continuaci\u00f3n vamos a ver c\u00f3mo, ahora, soy capaz de hacerlas.<\/p>\n<p>En este tutorial os voy a ense\u00f1ar c\u00f3mo hacer una app en la que, a\u00f1adiendo una palabra clave, la aplicaci\u00f3n me devuelve un t\u00edtulo para crear un art\u00edculo optimizado para el SEO, teniendo en cuenta los 10 primeros art\u00edculos bien posicionados en Google.<\/p>\n<p>El c\u00f3digo completo de la aplicaci\u00f3n que haremos lo tienes <a href=\"https:\/\/github.com\/tolentinomh\/desplegar-seo-app-kinsta\">disponible en GitHub<\/a>. Aqu\u00ed puedes ver como se ver\u00e1 la aplicaci\u00f3n.<\/p>\n<p>Formulario para crear el Titular:<\/p>\n<figure style=\"width: 831px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image30.png\" alt=\"Captura de pantalla del formulario de la aplicaci\u00f3n para Generar T\u00edtulos SEO\" width=\"831\" height=\"407\"><figcaption class=\"wp-caption-text\">Formulario de la aplicaci\u00f3n para Generar T\u00edtulos SEO<\/figcaption><\/figure>\n<p>Una vez que a\u00f1adamos un palabra clave y hagamos clic en el bot\u00f3n \u00ab<strong>Crear Titular<\/strong>\u00ab, tendremos una nube de tags de las palabras m\u00e1s usadas en los t\u00edtulos de los 10 primeros resultados de Google.<\/p>\n<p>En este caso, la palabra clave que he elegido es \u201c<strong>Notion vs Obsidian<\/strong>\u201d y esta es la nube de tags generada:<\/p>\n<figure style=\"width: 768px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image25.png\" alt=\"Captura de pantalla de la nube de tags generada \" width=\"768\" height=\"335\"><figcaption class=\"wp-caption-text\">Nube de tags generada con nuestra Aplicaci\u00f3n<\/figcaption><\/figure>\n<p>Y m\u00e1s abajo, el titular generado con IA bas\u00e1ndose en la informaci\u00f3n de los 10 primeros resultados de Google y en la palabra clave a\u00f1adida en el formulario:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image14.png\" alt=\"Captura de pantalla del resultado que devuelve nuestro programa. En la parte de arriba de la image est\u00e1 el titular generado y abajo las palabras clave m\u00e1s repetidas y los t\u00edtulos de los 10 primeros resultados de Google\" width=\"866\" height=\"883\"><\/p>\n<p>M\u00e1s all\u00e1 del caso concreto que vamos a construir, lo que quiero transmitir con este tutorial es que puedes crear casi cualquier herramienta que seas capaz de imaginar y en el proceso, aprender a programar.<\/p>\n<p>Creo que la IA nos va a convertir en &#8216;jefes&#8217; de un ej\u00e9rcito de &#8216;juniors&#8217;, que son las inteligencias artificiales (IAs).<\/p>\n<p>Y recuerda, cu\u00e1nto m\u00e1s sepas de una materia en concreto, m\u00e1s jugo le vas a sacar a la IA.<\/p>\n<h2>Prerrequisitos<\/h2>\n<p>Ya he comentado que no s\u00e9 programar, pero es cierto que tengo amplios conocimientos en tecnolog\u00eda y como he intentando aprender a programar varias veces, me muevo razonablemente bien por la terminal, y lo m\u00e1s importante, soy un fen\u00f3meno copiando y pegando c\u00f3digo.<\/p>\n<p>La aplicaci\u00f3n que vamos a construir, la vamos a hacer en Flask, que es un framework de Python. Aunque no sepas programar, es necesario que tengas instalado Python en tu ordenador y que hayas \u201cjugado\u201d alguna vez con \u00e9l. De otra forma se te puede hacer muy cuesta arriba el tutorial.<\/p>\n<p>Las herramientas que vas a necesitar para poder replicar este tutorial son:<\/p>\n<ul>\n<li><a href=\"https:\/\/chat.openai.com\/\">ChatGPT<\/a> 4: Aunque, seguramente, es posible crear la aplicaci\u00f3n con ChatGPT 3.5 (el gratuito), se equivocar\u00e1 mucho m\u00e1s que ChatGPT 4 y te costar\u00e1 m\u00e1s trabajo.<\/li>\n<li>API de <a href=\"https:\/\/dataforseo.com\/\">DataForSEO:<\/a> Utilizaremos el API de DataForSEO para conseguir los 10 primeros resultados de Google. Tiene versi\u00f3n gratuita y te regalan 1$ para probarla. Como cada llamada al API vale pocos c\u00e9ntimos, el d\u00f3lar que nos regalan nos va a durar para realizar muchas pruebas.<\/li>\n<li><a href=\"https:\/\/platform.openai.com\/\">API de OpenAI<\/a>: Para generar nuestro titular vamos a usar el API de OpenAI. Aunque es de pago, si solo la usas para el tutorial, gastar\u00e1s muy pocos c\u00e9ntimos.<\/li>\n<\/ul>\n<p>Lo que har\u00e1 nuestra herramienta es lo siguiente:<\/p>\n<ul>\n<li>Recoger la b\u00fasqueda que hace el usuario en el formulario.<\/li>\n<li>Enviar la b\u00fasqueda al API de DataForSEO para que nos devuelva los t\u00edtulos de los 10 primeros resultados de Google<\/li>\n<li>Enviar los t\u00edtulos de los 10 primeros resultados de Google al API de OpenAI para que nos genere un t\u00edtulo basado en la informaci\u00f3n de los 10 primeros resultados en Google y en las indicaciones que le demos en el formulario de entrada.<\/li>\n<\/ul>\n<h2>Creando nuestra aplicaci\u00f3n con ChatGPT<\/h2>\n<h3>Divide el problema<\/h3>\n<p>La inteligencia artificial es muy buena, pero no tanto como imaginamos; por lo que lo primero que tenemos que hacer es dividir el problema que queremos solucionar en tantas partes como podamos.<\/p>\n<p>Como expliqu\u00e9 m\u00e1s arriba, nuestro programa necesita lo siguiente:<\/p>\n<p><strong>1. Crear un formulario:<\/strong><\/p>\n<p>Lo primero que necesitamos es crear un formulario con un campo de texto y un bot\u00f3n. Este problema es tan peque\u00f1o y tan f\u00e1cil para la IA que no requiere que se lo pidamos por separado.<\/p>\n<p><strong>2. Conectarse con el API de DataForSEO<\/strong><\/p>\n<p>Necesitamos conectarnos a la API de DataForSEO para recibir los 10 primeros resultados de Google, con respecto a la palabra clave que el usuario a\u00f1ada en el formulario.<\/p>\n<p>Este problema es m\u00e1s complicado que crear un formulario, por lo que se lo pediremos a la IA de forma aislada y solo cuando tengamos solventado este problema a\u00f1adiremos el siguiente.<\/p>\n<p><strong>3. Conectarse con el API de OpenAI<\/strong><\/p>\n<p>Una vez obtenidos los datos de DataForSEO, se los tenemos que pasar al API de OpenAI para que nos devuelva nuestro titular generado con inteligencia artificial.<\/p>\n<h3>Estudio de las APIs a Utilizar<\/h3>\n<p>Como has podido ver en el listado anterior de herramientas que usaremos en este tutorial, hay varias <a href=\"https:\/\/kinsta.com\/es\/blog\/apis-de-terceros\/\">APIs<\/a> (DATAForSEO y OpenAI).<\/p>\n<p>Las APIs nos permiten conectarnos a funcionalidades de terceros y usarlas dentro de nuestras propias aplicaciones; por lo tanto tendremos que llamarlas desde nuestra propia aplicaci\u00f3n para que nos d\u00e9 la informaci\u00f3n que necesitamos.<\/p>\n<p>DataForSEO tiene una zona de pruebas (playground) que te permite interactuar con su api y aprender a usarla correctamente:<\/p>\n<figure style=\"width: 1894px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image13.png\" alt=\"Captura de pantalla del Playground de la API de DataForSeo\" width=\"1894\" height=\"925\"><figcaption class=\"wp-caption-text\">Playground de la API de DataForSeo<\/figcaption><\/figure>\n<p>A la derecha de la imagen, podemos ver el formato que tiene la devoluci\u00f3n de la llamada a su API.<\/p>\n<p>Adem\u00e1s, en la parte de abajo, puedes ver el bot\u00f3n \u201c<strong>Code Example<\/strong>\u201d. Al hacer clic en este bot\u00f3n iremos a la siguiente pantalla:<\/p>\n<figure style=\"width: 940px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image43.png\" alt=\"Captura de pantalla de c\u00f3digo de ejemplo de la API de DataForSEO con un desplegable para cambiar el lenguaje de programaci\u00f3n\" width=\"940\" height=\"522\"><figcaption class=\"wp-caption-text\">C\u00f3digo de ejemplo de la API de DataForSEO con un desplegable para cambiar el lenguaje de programaci\u00f3n<\/figcaption><\/figure>\n<p>A la derecha de la imagen puedes elegir en qu\u00e9 lenguaje de programaci\u00f3n quieres el ejemplo de uso de su API y en el medio de la imagen puedes a\u00f1adir tus credenciales para que funcione la API.<\/p>\n<p>Tus credenciales los puedes encontrar en el men\u00fa lateral izquierdo, debajo de <strong>API Settings<\/strong> \u2192 <strong>API access<\/strong>:<\/p>\n<figure style=\"width: 1912px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image10.png\" alt=\"Captura de pantalla de la configuraci\u00f3n de los credenciales de la API de DataForSEO\" width=\"1912\" height=\"775\"><figcaption class=\"wp-caption-text\">Configuraci\u00f3n de los credenciales de la API de DataForSEO<\/figcaption><\/figure>\n<h3>Preguntar a ChatGPT c\u00f3mo crear un formulario y c\u00f3mo conectarse con la API de DataForSEO<\/h3>\n<p>Lo primero que hago es preguntarle a ChatGPT c\u00f3mo crear el formulario y c\u00f3mo puedo llamar a la API de DataForSEO. Para ello, le doy la informaci\u00f3n que me proporciona la documentaci\u00f3n de DataForSEO y que te he ense\u00f1ado m\u00e1s arriba.<\/p>\n<p><strong>El prompt concreto que uso es el siguiente:<\/strong><\/p>\n<p><em>\u201cPuedes crearme una aplicaci\u00f3n flask en la que haya una caja de texto donde el usuario escribe su b\u00fasqueda (en el ejemplo era notion vs obsidian) y que aparezca el resultado de vuelta bien maquetado en una tabla?\u201c<\/em><\/p>\n<p>Adem\u00e1s del prompt, le paso el c\u00f3digo de ejemplo que me da DataForSEO y le paso el formato de la salida en la que la API de DataForSEO devuelve la informaci\u00f3n:<\/p>\n<figure style=\"width: 1313px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image2.png\" alt=\"Captura de pantalla de ChatGPT con el prompt para crear una aplicaci\u00f3n flask con una llamada a la API de DataForSEO\" width=\"1313\" height=\"813\"><figcaption class=\"wp-caption-text\">Prompt para crear una aplicaci\u00f3n flask con una llamada a la API de DataForSEO<\/figcaption><\/figure>\n<p>A mi pregunta, ChatGPT responde:<\/p>\n<figure style=\"width: 1055px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image35.png\" alt=\"Captura de pantalla de la respuesta de ChatGPT para crear una aplicaci\u00f3n flask con una llamada a la API de DataForSEO\" width=\"1055\" height=\"787\"><figcaption class=\"wp-caption-text\">Respuesta de ChatGPT para crear una aplicaci\u00f3n flask con una llamada a la API de DataForSEO<\/figcaption><\/figure>\n<p>Lo primero que nos dice ChatGPT es que tenemos que instalar Flask. En Python, instalamos las librer\u00edas necesarias con una herramienta llamada PIP, la cual tambi\u00e9n tenemos que tener instalada en nuestro ordenador.<\/p>\n<p>ChatGPT me da un c\u00f3digo, pero como buen novato que soy, no s\u00e9 qu\u00e9 hacer con \u00e9l, por lo que se lo pregunto a ChatGPT sin ninguna verg\u00fcenza.<\/p>\n<figure style=\"width: 997px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image11.png\" alt=\"Captura de pantalla de ChatGPT en la que le pregunto como ejecutar una aplicaci\u00f3n hecha en Flask\" width=\"997\" height=\"865\"><figcaption class=\"wp-caption-text\">Pregunto a ChatGPT como ejecutar una aplicaci\u00f3n hecha en Flask<\/figcaption><\/figure>\n<p>Y ChatGPT me va respondiendo paso a paso como tengo que ejecutarlo. Sigo todo el proceso y me encuentro con el primer problema, el programa no funciona.<\/p>\n<p>Copio el error y se lo pego a ChatGPT:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image44.png\" alt=\"Captura de pantalla de ChatGPT en la que le pego un error del c\u00f3digo generado en Python\" width=\"915\" height=\"709\"><\/p>\n<p>El error se soluciona y me sale otro error.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image19.png\" alt=\"Captura de pantalla de ChatGPT con un error que arroja un programa hecho en Python\" width=\"973\" height=\"598\"><\/p>\n<p>ChatGPT me vuelve a dar la soluci\u00f3n:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image12.png\" alt=\"Captura de pantalla en la que se puede ver como ChatGPT ayuda a solucionar un error de un programa hecho en Python\" width=\"939\" height=\"647\"><\/p>\n<p>Y por fin, tengo la primera funcionalidad sin errores:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image45.png\" alt=\"Captura de pantalla con el texto \"Ahora funciona perfecto ;)\"\" width=\"418\" height=\"95\"><\/p>\n<p>Nuestra aplicaci\u00f3n, aunque todav\u00eda sin dise\u00f1o, ya tiene un formulario y es capaz de interactuar con el API de DataForSEO, es decir, ya tenemos la primera funcionalidad.<\/p>\n<p><strong>Aqu\u00ed puedes ver nuestro rudimentario funcionario<\/strong>:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image41.png\" alt=\"Captura de pantalla de un navegador web con un formulario con una caja de texto que pone 'notion vs obsidian' y un bot\u00f3n con el texto 'Search'\" width=\"1357\" height=\"150\"><\/p>\n<p>De momento, no nos preocupamos por su apariencia, ya veremos c\u00f3mo resolverlo m\u00e1s adelante.<\/p>\n<p>Y aqu\u00ed puedes ver lo que pasa cuando un usuario a\u00f1ade una palabra clave y hace clic en buscar:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image18.png\" alt=\"Captura de pantalla de un navegador con una tabla con los primeros resultados de google de la b\u00fasqueda de la palabra clave 'notion vs obsidian'\" width=\"1897\" height=\"802\"><\/p>\n<h3>Preguntar a ChatGPT c\u00f3mo Conectarse con el API de OpenAI<\/h3>\n<p>Ahora que ya tenemos la primera parte de nuestra aplicaci\u00f3n, sigo el mismo procedimiento que he seguido para conectarme a la API de DataForSEO para conectarme al API de OpenAI:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image24.png\" alt=\"Captura de pantalla de ChatGPT pregunt\u00e1ndole como crear una aplicaci\u00f3n en flask para crear un t\u00edtulo a partir de los 10 primeros resultados de Google\" width=\"911\" height=\"639\"><\/p>\n<p>Como puedes ver en la captura, le digo a ChatGPT que solo quiero que recoja los 10 primeros resultados de Google y que no hace falta que me devuelva todas las columnas, ya que solo necesito la columna title.<\/p>\n<p>Como este paso es muy f\u00e1cil, le pido la segunda parte de la funcionalidad de nuestra herramienta. Le explico que necesito que me genere un <strong>t\u00edtulo basado en la b\u00fasqueda del usuario y en los 10 primeros resultados<\/strong>\u00a0que est\u00e1n bien posicionados en Google.<\/p>\n<p>Y ChatGPT me responde:<\/p>\n<figure style=\"width: 891px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image8.png\" alt=\"Captura de pantalla en la que ChatGPT responde como crear una funcionalidad en Flask para crear llamar a la API de OpenAI\" width=\"891\" height=\"691\"><figcaption class=\"wp-caption-text\">ChatGPT nos ayuda a crear una funcionalidad en Flask para crear una llamada a la API de OpenAI<\/figcaption><\/figure>\n<p>Al igual que me pas\u00f3 anteriormente, el c\u00f3digo que me proporciona ChatGPT no me funciona a la primera y de nuevo le paso los errores que me arroja el programa hasta que me funciona.<\/p>\n<p>No os voy a pasar todas las capturas de cada resoluci\u00f3n de cada error, ya que ChatGPT responde distinto cada vez que le preguntas y los errores que me da a m\u00ed, muy posiblemente, sean distintos a los que os pueda dar a vosotros<\/p>\n<p>Lo que s\u00ed voy a hacer es comentaros algunos de los errores m\u00e1s importantes, los cuales creo que tambi\u00e9n os pueden dar a vosotros.<\/p>\n<h4>Problema con las Credenciales de las APIs<\/h4>\n<p>Para conectarte a las APIs, tienes que usar tus credenciales de seguridad, credenciales que no debes compartir con nadie.<\/p>\n<p>Si vas a usar tu aplicaci\u00f3n para ti solo, en un ordenador local, puedes a\u00f1adir las credenciales en el propio script, aunque no te lo recomiendo ya que si compartes el script con alguien puedes comprometer tu seguridad.<\/p>\n<p>Pero si vas a subir tu programa a internet, no solo te recomiendo evitar a\u00f1adir las credenciales al script, es m\u00e1s, es obligatorio no hacerlo, ya que si no, cualquiera podr\u00eda verlas y comprometer tu seguridad.<\/p>\n<p>Cada servidor gestiona de forma distinta las credenciales, por ejemplo, en Kinsta tienes la posibilidad de a\u00f1adir las credenciales como <a href=\"https:\/\/kinsta.com\/es\/docs\/variables-de-entorno\/\">variables de entorno<\/a> desde el escritorio de MyKinsta.<\/p>\n<p>De esta forma, las credenciales no se pueden ver en el c\u00f3digo.<\/p>\n<h4>Problemas con la Versi\u00f3n de la API de OpenAI<\/h4>\n<p>Es curioso, pero ChatGPT me dio menos problemas al crear el c\u00f3digo de conexi\u00f3n a la API de DataForSEO que al crear el c\u00f3digo de conexi\u00f3n a la API de OpenAI.<\/p>\n<p>El problema con el que me he encontrado es que la API de OpenAI ha sido actualizada y los conocimientos de ChatGPT estaban obsoletos. Para resolver el problema, le he pasado un ejemplo actualizado de la documentaci\u00f3n de la API de OpenAI:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image16.png\" alt=\"Captura de pantalla de ChatGPT en el que le paso un c\u00f3digo en Python que me da error para que me ayude\" width=\"668\" height=\"571\"><\/p>\n<h3>\u00daltimos retoques<\/h3>\n<p>Llegados a este punto, ya tenemos la funcionalidad principal de nuestro programa y solo nos falta pulir algunos peque\u00f1os detalles para dejarlo a nuestro gusto. Podr\u00edamos conformarnos con la funcionalidad que hemos desarrollado, pero vas a ver que con un poco de imaginaci\u00f3n podemos llevar nuestra aplicaci\u00f3n a otro nivel.<\/p>\n<h4>CSS para que se vea m\u00e1s atractivo<\/h4>\n<p>Aunque el programa funciona perfectamente, el aspecto de la aplicaci\u00f3n es muy pobre, ya que no le hemos aplicado estilos CSS.<\/p>\n<p>\u00bfC\u00f3mo vamos a mejorar el aspecto de nuestra aplicaci\u00f3n? Pues pidi\u00e9ndoselo a ChatGPT:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image9.png\" alt=\"Captura de pantalla de ChatGPT en la que le preguntamos como mejorar la maquetaci\u00f3n de nuestra aplicaci\u00f3n\" width=\"815\" height=\"149\"><\/p>\n<p>Y con su amabilidad de siempre, me responde de forma eficiente:<\/p>\n<figure style=\"width: 846px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image22.png\" alt=\"Captura de pantalla de ChatGPT en la que nos ayuda a mejorar la maquetaci\u00f3n de nuestra aplicaci\u00f3n de Flask\" width=\"846\" height=\"764\"><figcaption class=\"wp-caption-text\">ChatGPT nos ayuda a mejorar la maquetaci\u00f3n de nuestra aplicaci\u00f3n de Flask<\/figcaption><\/figure>\n<p>Llegados a este punto, ya tengo un programa que se ve bien y que hace lo que yo hab\u00eda pensado, pero podemos seguir iterando para mejorarlo.<\/p>\n<p>Para ello, le pido a ChatGPT que inicie una tormenta de ideas para mejorarlo:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image6.png\" alt=\"Captura de pantalla en la que se le pide a ChatGPT ideas para mejorar el programa\" width=\"622\" height=\"121\"><\/p>\n<p>Y nuestro amigo ChatGPT nos da un mont\u00f3n de buenas ideas:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image17.png\" alt=\"Captura de pantalla de Chatgpt con 6 ideas para mejorar la herramienta de sugerencia de art\u00edculos SEO\" width=\"814\" height=\"780\"><\/p>\n<p>De las ideas que me proporciona ChatGPT me gusta la 2\u00aa idea:<\/p>\n<pre>An\u00e1lisis de Palabras Clave:\n\nImplementar una funcionalidad que analice las palabras clave m\u00e1s comunes en los t\u00edtulos recogidos y las muestre al usuario, proporcionando insights sobre qu\u00e9 t\u00e9rminos son actualmente populares o tendencias en su nicho.<\/pre>\n<p>Por lo que le pido que lo desarrolle:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image36.png\" alt=\"Captura de pantalla de ChatGPT en la que le pido que desarrolle una funcionalidad para que analice las palabras clave m\u00e1s comunes en los t\u00edtulos.\" width=\"800\" height=\"276\"><\/p>\n<p>Esta funcionalidad va a consistir en un listado con las palabras m\u00e1s usadas en los titulares de las p\u00e1ginas que est\u00e1n bien posicionadas en Google. Como puedes imaginar, ChatGPT me crea la funcionalidad y funciona perfectamente.<\/p>\n<p>Se me ocurre que podr\u00eda quedar muy bien no solo recibir el listado, sino tambi\u00e9n una nube de tags con las palabras m\u00e1s usadas.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image32.png\" alt=\"Captura de pantalla en la que pregunto a ChatGPT como a\u00f1adir una nube de tags a nuestro programa hecho con Flask\" width=\"828\" height=\"510\"><\/p>\n<p>El resultado de las nube de tags no me convence y se lo digo:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image20.png\" alt=\"Captura de pantalla en la que pido a ChatGPT como mejorar la nube de tags generada y en el que ChatGPT responde como hacerlo\" width=\"829\" height=\"476\"><\/p>\n<p>Aqu\u00ed puedes ver resultado definitivo de la nube de tags:<\/p>\n<figure style=\"width: 712px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image26.png\" alt=\"Captura de pantalla una nube de tags con varias palabras de colores. Algunas de las palabras son: 'Notion', 'obsidian', 'youtube', 'comparison'\" width=\"712\" height=\"306\"><figcaption class=\"wp-caption-text\">Nube de tags con varias palabras de colores<\/figcaption><\/figure>\n<h4>A\u00f1adir opciones de personalizaci\u00f3n en el formulario<\/h4>\n<p>Me gust\u00f3 otra de las ideas que me dio ChatGPT:<\/p>\n<pre><strong>Opciones de Personalizaci\u00f3n del Usuario:<\/strong>\n\nPermitir a los usuarios configurar preferencias para las sugerencias de t\u00edtulos, como enfocarse en ciertos tipos de palabras clave, ajustar la longitud del t\u00edtulo, o priorizar ciertos aspectos SEO.<\/pre>\n<p>Me parece buena idea que el usuario tenga mayor control sobre la generaci\u00f3n del titular, por lo que le pido que lo desarrolle.<\/p>\n<p>Una cosa que hago cada cierto tiempo es pasarle a ChatGPT todo el c\u00f3digo que he generado hasta el momento, para que mantenga dentro del contexto el c\u00f3digo que va generando y as\u00ed no &#8216;se olvide&#8217; de \u00e9l:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image40.png\" alt=\"Captura de pantalla en la que le pido a ChatGPT que a\u00f1ada a la funcionalidad del programa opciones de personalizaci\u00f3n del usuario\" width=\"796\" height=\"407\"><\/p>\n<p>Y su respuesta est\u00e1 dividida en 2 partes:<\/p>\n<p><strong>Cambiar el formulario<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image34.png\" alt=\"Captura de pantalla en la que ChatGPT agrega opciones de personalizaci\u00f3n del usuario a un formulario de HTML\" width=\"833\" height=\"558\"><\/p>\n<p><strong>Y cambiar la l\u00f3gica del programa<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image29.png\" alt=\"Captura de pantalla en la que ChatGPT explica como modificar la l\u00f3gica de backend de un programa desarrollado en Flask\" width=\"833\" height=\"558\"><\/p>\n<p>Tras solucionar un par de errores con la ayuda de ChatGPT, conseguimos a\u00f1adir la nueva funcionalidad.<\/p>\n<h4>Mejora Final<\/h4>\n<p>Como ChatGPT4 es capaz de interpretar im\u00e1genes, hago una captura de pantalla del programa para que ChatGPT &#8216;vea&#8217; el resultado final y le pido si podemos mejorar la maquetaci\u00f3n y el orden de cada funcionalidad:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image23.png\" alt=\"Captura de pantalla en la que pregunto a ChatGPT como mejorar la maquetaci\u00f3n de la herramienta. En la imagen se puede ver tambi\u00e9n la captura de pantalla del programa que quiero mejorar \" width=\"750\" height=\"517\"><\/p>\n<p>Y tras un par de conversaciones adicionales con ChatGPT, en las que le coment\u00e9 que me gustar\u00eda a\u00f1adir un poco de color a la nube de tags y algunas columnas para maquetar cada secci\u00f3n de la aplicaci\u00f3n, llegamos al resultado final:<\/p>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image15.png\" alt=\"Captura de pantalla del programa Generador de T\u00edtulos SEO en la que se puede ver un formulario, una nube de tags, el t\u00edtulo generado, palabras clave y los t\u00edtulos en los que est\u00e1 basado el t\u00edtulo generado\" width=\"1600\" height=\"1658\"><figcaption class=\"wp-caption-text\">Captura de pantalla del Programa Desarrollado<\/figcaption><\/figure>\n<p>Como puedes ver, el resultado es muy bueno, considerando que no s\u00e9 programar y que he podido crear un programa totalmente a mi gusto. De hecho, el resultado final es mejor que las expectativas que ten\u00eda al empezar.<\/p>\n<p>El programa funciona perfectamente instalado localmente en mi ordenador; sin embargo, si quiero que sea accesible desde internet, necesito subirlo a un servidor.<\/p>\n<h2>Como desplegar la aplicaci\u00f3n con Kinsta<\/h2>\n<p>Como este tutorial trata sobre c\u00f3mo crear una app sin saber programar, voy a usar un atajo para desplegarla con Kinsta. Para hacerlo m\u00e1s f\u00e1cil y r\u00e1pido, utilizar\u00e9 como base este <a href=\"https:\/\/kinsta.com\/es\/docs\/instalacion-de-una-aplicacion-en-kinsta\/\">c\u00f3digo de ejemplo de Kinsta<\/a>.<\/p>\n<p>Pero si quieres aprender a desplegar una aplicaci\u00f3n de Flask en Kinsta desde cero, <a href=\"https:\/\/kinsta.com\/es\/blog\/aplicacion-python-flask\/\">aqu\u00ed tienes un tutorial profundo de como hacerlo<\/a>.<\/p>\n<h3>Pasos Previos<\/h3>\n<p>Para poder <a href=\"https:\/\/sevalla.com\/application-hosting\/\">alojar tu aplicaci\u00f3n con Kinsta<\/a> necesitas:<\/p>\n<ul>\n<li>Una cuenta Gratuita de <a href=\"https:\/\/github.com\/\">Github<\/a><\/li>\n<li>Una cuenta de <a href=\"https:\/\/kinsta.com\/es\/suscripcion\/\">Kinsta<\/a><\/li>\n<\/ul>\n<h3>Clonar el Proyecto demo de Kinsta<\/h3>\n<p>Kinsta tiene un proyecto de Flask listo para usar. Dado que nuestro proyecto es muy sencillo, podemos tomar como base el proyecto demo de Kinsta y luego a\u00f1adir nuestra propia programaci\u00f3n.<\/p>\n<p>Para ello, tienes que ir al repositorio del <a href=\"https:\/\/github.com\/kinsta\/hello-world-flask\">proyecto de Flask demo de Kinsta<\/a>, hacer clic en el bot\u00f3n \u201c<strong>Use this template<\/strong>\u201d y en el desplegable que sale elegir \u201c<strong>Create a new repository<\/strong>\u201d.<\/p>\n<figure style=\"width: 1575px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image28.png\" alt=\"Captura de pantalla de la pantalla del repositorio hello-world-flask de Kinsta\" width=\"1575\" height=\"513\"><figcaption class=\"wp-caption-text\">Repositorio hello-world-flask de Kinsta<\/figcaption><\/figure>\n<p>En la siguiente pantalla tenemos que darle un nombre y elegir si el repositorio es p\u00fablico o privado, en mi caso elijo privado:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image3.png\" alt=\"Captura de pantalla de la creaci\u00f3n de un nuevo repositorio en Github basado en el repositorio de Kinsta hello-world-flask\" width=\"864\" height=\"784\"><\/p>\n<p>Ahora, ya tenemos una copia del repositorio demo de Flask de Kinsta en nuestro repositorio de Github.<\/p>\n<p>Habitualmente, te recomendar\u00eda clonar el repositorio en tu m\u00e1quina local para trabajar de manera m\u00e1s c\u00f3moda y profesional. Sin embargo, asumo que si est\u00e1s viendo este tutorial, es posible que no est\u00e9s familiarizado con herramientas como Git. Por eso, optar\u00e9 por un m\u00e9todo m\u00e1s sencillo, aunque menos profesional.<\/p>\n<p>Si quieres ver c\u00f3mo trabajar con Git de forma m\u00e1s avanzada <a href=\"https:\/\/kinsta.com\/es\/blog\/como-enviar-codigo-a-github\/\">aqu\u00ed tienes un magn\u00edfico tutorial<\/a>.<\/p>\n<p>C\u00f3mo estaba diciendo, ya tenemos el proyecto demo en nuestra cuenta de GitHub:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image1.png\" alt=\"Captura de pantalla del repositorio desplegar-seo-app-kinsta en Github\" width=\"948\" height=\"484\"><\/p>\n<p>Del proyecto demo de Flask de Kinsta, tenemos que modificar 2 ficheros con los datos de nuestro proyecto. Concretamente tenemos que modificar los ficheros, <strong>requirements.txt<\/strong> que est\u00e1 en el ra\u00edz de nuestro repositorio y <strong>main.py<\/strong> que est\u00e1 dentro de la carpeta helloworld.<\/p>\n<h4>Fichero requirements.txt<\/h4>\n<p>En este fichero, tenemos que a\u00f1adir las librer\u00edas que necesita nuestra aplicaci\u00f3n para funcionar. Como hemos usado un repositorio preparado por Kinsta ya vienen algunas librer\u00edas necesarias, s\u00f3lo tenemos que a\u00f1adir aquellas que hemos instalado en nuestro programa.<\/p>\n<p>Para saber qu\u00e9 librer\u00edas tenemos instaladas en nuestro programa, \u00a0podemos usar el comando de terminal \u00ab<strong>pip freeze<\/strong>\u00ab.<\/p>\n<p>Otra forma ser\u00eda revisar nuestra conversaci\u00f3n con ChatGPT y ver qu\u00e9 librer\u00edas hemos instalado durante el proceso de desarrollo de nuestra aplicaci\u00f3n. Sabr\u00e1s cu\u00e1ndo ChatGPT nos ha dicho que instalemos una librer\u00eda cada vez que veas el comando \u00ab<strong>pip install nombre-librer\u00eda<\/strong>\u201d<\/p>\n<p>Para a\u00f1adir las librer\u00edas al fichero requirements.txt, hacemos clic en el fichero requirements.txt en Github y a la derecha veremos el icono de un lapicero. Si hacemos clic en el lapicero podremos editar el fichero:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image39.png\" alt=\"Captura de pantalla de la edici\u00f3n del fichero requirements.txt en Github\" width=\"1883\" height=\"378\"><\/p>\n<p>Como podemos observar, ya hay librer\u00edas dentro del fichero, por lo que a\u00f1adimos las que necesitamos y cambiamos las versiones de las librer\u00edas existentes, para que no me de problemas posteriormente, ya que mi programa necesita usar una versi\u00f3n de Flask m\u00e1s moderna:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image37.png\" alt=\"Captura de pantalla de las librer\u00edas a\u00f1adidas al fichero requirements.txt en GitHub\" width=\"1578\" height=\"371\"><\/p>\n<p>A la derecha hay un bot\u00f3n verde que pone \u201c<strong>Commit changes<\/strong>\u201d hacemos clic y nos sale la siguiente pantalla:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image33.png\" alt=\"Captura de pantalla en la que hacemos un Commit con el mensaje 'nuevas librer\u00edas en requirements.txt' en GitHub\" width=\"660\" height=\"567\"><\/p>\n<p>Ponemos el mensaje que queramos sobre el cambio que hemos hecho en el fichero. Cuanto m\u00e1s expl\u00edcito seas, mejor te vendr\u00e1 en el futuro si quieres ver los cambios que has hecho en tu aplicaci\u00f3n.<\/p>\n<p>Hacemos clic en el bot\u00f3n verde de abajo \u201c<strong>Commit changes<\/strong>\u201d.<\/p>\n<h4>Fichero main.py<\/h4>\n<p>Ahora, hacemos lo mismo con el archivo <strong>main.py<\/strong>, el cual est\u00e1 dentro de la carpeta helloworld. Tenemos que cambiar todo el contenido del fichero por el contenido de nuestro programa creado con ayuda de ChatGPT.<\/p>\n<p>Una vez hecho, el fichero tendr\u00e1 una apariencia como la siguiente:<\/p>\n<figure style=\"width: 1556px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image42.png\" alt=\"Captura de pantalla del contenido del archivo main.py en GitHub\" width=\"1556\" height=\"657\"><figcaption class=\"wp-caption-text\">Contenido del archivo main.py en GitHub<\/figcaption><\/figure>\n<h3>Desplegar en Kinsta el Proyecto de Github<\/h3>\n<p>Para poder desplegar el proyecto en Kinsta necesitas tener una cuenta de Kinsta y a\u00f1adir tu forma de pago preferida.<\/p>\n<p>Las buenas noticias son que te <a href=\"https:\/\/sevalla.com\/application-hosting\/\">regalamos 20$<\/a>\u00a0para que puedas probarlo gratis y sin compromiso.<\/p>\n<p>Una vez que tienes tu cuenta configurada, dentro de <a href=\"https:\/\/my.kinsta.com\/login?lang=es\">MyKinsta<\/a>, haces clic en <strong>Aplicaciones<\/strong> en el men\u00fa lateral y te encuentras con la pantalla para iniciar el despliegue, y el aviso que te regalamos 20$.<\/p>\n<figure style=\"width: 1550px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image31.png\" alt=\"Captura de pantalla del Escritorio de MyKinsta con el mensaje 'Despliega tu primera aplicaci\u00f3n en minutos'\" width=\"1550\" height=\"815\"><figcaption class=\"wp-caption-text\">Escritorio de MyKinsta con el mensaje &#8216;Despliega tu primera aplicaci\u00f3n en minutos&#8217;<\/figcaption><\/figure>\n<p>Hacemos clic en <strong>Desplegar ahora<\/strong> y nos encontramos con esta pantalla:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image27.png\" alt=\"Captura de pantalla dentro de MyKinsta en la que elegimos los detalles del repositorio para a\u00f1adir una aplicaci\u00f3n\" width=\"774\" height=\"952\"><\/p>\n<p>Si todav\u00eda no tenemos conectado Github con nuestra cuenta de MyKinsta lo hacemos y vamos rellenado los siguientes campos:<\/p>\n<ul>\n<li><strong>Repositorio GitHub: <\/strong>Buscamos el repositorio que hemos creado en GitHub y si queremos que cada vez que se modifique el c\u00f3digo del programa se actualice la aplicaci\u00f3n en Kinsta marcamos el check \u201c<strong>Despliegue autom\u00e1tico en commit<\/strong>\u201d.<\/li>\n<li><strong>Nombre de Aplicaci\u00f3n:<\/strong>\u00a0Podemos poner el nombre que queramos.<\/li>\n<li><strong>Ubicaci\u00f3n del centro de datos:<\/strong>\u00a0Pondremos un centro de datos que est\u00e9 cerca de nosotros o cerca de tus usuarios, en mi caso en Europa.<\/li>\n<li><strong>Variables de Entorno:<\/strong> Tal como hablamos a lo largo del tutorial, es una mala pr\u00e1ctica poner las contrase\u00f1as o credenciales en la propia programaci\u00f3n de la aplicaci\u00f3n, para ello se usan las variables de entorno.<\/li>\n<\/ul>\n<p>En el caso de la aplicaci\u00f3n que hemos creado necesitamos a\u00f1adir 3 variables de entorno con sus respectivas contrase\u00f1as.<\/p>\n<p>Lo hacemos de la siguiente forma:<\/p>\n<ul>\n<li><strong>Clave 1:<\/strong> <code>OPENAI_API_KEY<\/code><\/li>\n<li><strong>Valor 1:<\/strong> \u201cTu API Key de OpenAI\u201d<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<ul>\n<li><strong>Clave 2:<\/strong> <code>DATAFORSEO_USERNAME<\/code><\/li>\n<li><strong>Valor 2:<\/strong> \u201cTu email de DataForSEO\u201d<\/li>\n<\/ul>\n<p>\u00a0<\/p>\n<ul>\n<li><strong>Clave 3:<\/strong> <code>DATAFORSEO_PASSWORD<\/code><\/li>\n<li><strong>Valor 3:<\/strong> \u201cTu contrase\u00f1a de DataForSEO\u201d<\/li>\n<\/ul>\n<p>Hacemos clic en <strong>Continuar<\/strong> y en la siguiente pantalla elegimos los recursos para el entorno de construcci\u00f3n y el resto lo dejamos como est\u00e1 por defecto:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image7.png\" alt=\"Captura de pantalla dentro de MyKinsta con las opciones del entorno de construcci\u00f3n para crear una aplicaci\u00f3n\" width=\"778\" height=\"661\"><\/p>\n<p>Hacemos clic en <strong>Continuar<\/strong> y en la siguiente pantalla dejamos las opciones como est\u00e1n por defecto.<\/p>\n<p>En el tama\u00f1o del pod elegimos la potencia que necesitamos seg\u00fan nuestra aplicaci\u00f3n:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image38.png\" alt=\"Captura de pantalla dentro de MyKinsta con las opciones de los recursos para nuestra aplicaci\u00f3n\" width=\"755\" height=\"935\"><\/p>\n<p>Hacemos clic en continuar y nos aparece la pantalla resumen con el coste estimado mensual, la forma de pago seleccionada y el aviso que te regalamos 20$ para que puedas probarlo sin coste.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image21.png\" alt=\"Captura de pantalla con el resumen de facturaci\u00f3n cuando a\u00f1adimos una aplicaci\u00f3n en MyKinsta\" width=\"773\" height=\"808\"><\/p>\n<p>Y listo, ahora solo tenemos que esperar hasta que el Despliegue termine, puede tardar unos minutos.<\/p>\n<p>Mientras se despliega, ver\u00e1s una pantalla como la siguiente:<\/p>\n<figure style=\"width: 1509px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image5.png\" alt=\"Captura de pantalla del log mientras se despliega una aplicaci\u00f3n en Kinsta\" width=\"1509\" height=\"656\"><figcaption class=\"wp-caption-text\">Log mientras se despliega una aplicaci\u00f3n en Kinsta<\/figcaption><\/figure>\n<p>Cuando termine, ver\u00e1s un check verde que te indicar\u00e1 que todo ha salido bien y que puedes empezar a usar la aplicaci\u00f3n.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image4.png\" alt=\"Captura de pantalla con la finalizaci\u00f3n del despligue de una aplicaci\u00f3n en Kinsta con un check verde \" width=\"1505\" height=\"145\"><\/p>\n<p>Kinsta, nos proporciona una URL para poder usar nuestra aplicaci\u00f3n desde el momento que termina de desplegarse, a la que puedes acceder desde el bot\u00f3n de la derecha \u201c<strong>Visita la App<\/strong>\u201d.<\/p>\n<p>Si has llegado hasta aqu\u00ed, enhorabuena, has sido capaz de programar tu propia herramienta para generar t\u00edtulos atractivos.<\/p>\n<figure style=\"width: 1600px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/04\/image15.png\" alt=\"Captura de pantalla del resultado de la aplicaci\u00f3n desarrollada y desplegada\" width=\"1600\" height=\"1658\"><figcaption class=\"wp-caption-text\">Resultado final de la aplicaci\u00f3n desarrollada y desplegada<\/figcaption><\/figure>\n<h2>Resumen<\/h2>\n<p>Como hemos visto, la inteligencia artificial es una herramienta de gran ayuda para poder transformar tus ideas en aplicaciones reales.<\/p>\n<p>A lo largo de este tutorial hemos creado una aplicaci\u00f3n utilizando el framework Flask de Python, dise\u00f1ada para generar t\u00edtulos optimizados para el SEO. Para ello hemos utilizado APIs, generado un interfaz para el usuario y usado librer\u00edas de Python. Y todo ello sin saber programar.<\/p>\n<p>\u00bfQu\u00e9 mejor forma de aprender a programar que haciendo tus propios proyectos?<\/p>\n<p>Adem\u00e1s, hemos visto c\u00f3mo hacer que nuestra aplicaci\u00f3n est\u00e9 disponible para todo el mundo mediante el servicio de <a href=\"https:\/\/sevalla.com\/application-hosting\/\">alojamiento de aplicaciones<\/a> de Kinsta. Ahora que hemos roto el hielo, no te conformes con replicar esta aplicaci\u00f3n, tu imaginaci\u00f3n es el l\u00edmite.<\/p>\n<p>Aunque hacer una aplicaci\u00f3n real puede requerir m\u00e1s conocimientos, crear aplicaciones de esta forma te permite desarrollar prototipos funcionales para uso interno, explicar mejor tus ideas a un programador profesional, o aprender a programar.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Quiz\u00e1s quieras crear tu propia herramienta SEO, o de cualquier otra cosa, pero te enfrentas a un obst\u00e1culo: no sabes programar. Podr\u00edas pensar que es totalmente &#8230;<\/p>\n","protected":false},"author":97,"featured_media":74942,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[],"topic":[1325,1320],"class_list":["post-74668","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","topic-herramientas-seo","topic-python"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>C\u00f3mo Desarrollar tu Propia Herramienta SEO con IA sin Saber Programar - Kinsta\u00ae<\/title>\n<meta name=\"description\" content=\"Aprende c\u00f3mo crear un herramienta SEO sin saber programar con la ayuda de la IA y alojarla en Kinsta en esta completa gu\u00eda paso a paso.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C\u00f3mo Desarrollar tu Propia Herramienta SEO con Inteligencia Artificial y Flask (Python), Sin Saber Programar\" \/>\n<meta property=\"og:description\" content=\"Aprende c\u00f3mo crear un herramienta SEO sin saber programar con la ayuda de la IA y alojarla en Kinsta en esta completa gu\u00eda paso a paso.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinsta.es\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-05-14T09:03:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-14T09:08:34+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png\" \/>\n\t<meta property=\"og:image:width\" content=\"4800\" \/>\n\t<meta property=\"og:image:height\" content=\"2512\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"oscarmartin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Aprende c\u00f3mo crear un herramienta SEO sin saber programar con la ayuda de la IA y alojarla en Kinsta en esta completa gu\u00eda paso a paso.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask-1024x536.png\" \/>\n<meta name=\"twitter:creator\" content=\"@oscarmartin\" \/>\n<meta name=\"twitter:site\" content=\"@Kinsta_ES\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"oscarmartin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"25 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/\"},\"author\":{\"name\":\"oscarmartin\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/ca3808152c49de03985b749215abef33\"},\"headline\":\"C\u00f3mo Desarrollar tu Propia Herramienta SEO con Inteligencia Artificial y Flask (Python), Sin Saber Programar\",\"datePublished\":\"2024-05-14T09:03:45+00:00\",\"dateModified\":\"2024-05-14T09:08:34+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/\"},\"wordCount\":4916,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/es\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png\",\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/\",\"url\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/\",\"name\":\"C\u00f3mo Desarrollar tu Propia Herramienta SEO con IA sin Saber Programar - Kinsta\u00ae\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png\",\"datePublished\":\"2024-05-14T09:03:45+00:00\",\"dateModified\":\"2024-05-14T09:08:34+00:00\",\"description\":\"Aprende c\u00f3mo crear un herramienta SEO sin saber programar con la ayuda de la IA y alojarla en Kinsta en esta completa gu\u00eda paso a paso.\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png\",\"contentUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png\",\"width\":4800,\"height\":2512,\"caption\":\"Herramienta SEO con Inteligencia Artificial y Flask\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Herramientas SEO\",\"item\":\"https:\/\/kinsta.com\/es\/secciones\/herramientas-seo\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"C\u00f3mo Desarrollar tu Propia Herramienta SEO con Inteligencia Artificial y Flask (Python), Sin Saber Programar\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/es\/#website\",\"url\":\"https:\/\/kinsta.com\/es\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Soluciones de alojamiento premium, r\u00e1pidas y seguras\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/es\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/es\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/es\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/es\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinsta.es\/\",\"https:\/\/x.com\/Kinsta_ES\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/ca3808152c49de03985b749215abef33\",\"name\":\"oscarmartin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/kinsta.com\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0bc7a7373f5a241a5a23af879c15b447?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0bc7a7373f5a241a5a23af879c15b447?s=96&d=mm&r=g\",\"caption\":\"oscarmartin\"},\"description\":\"Llevo trabajando por y para internet desde hace m\u00e1s de 20 a\u00f1os. Me encanta WordPress, la creaci\u00f3n de contenidos y el Marketing de Afiliaci\u00f3n.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/oscarmartinh\/\",\"https:\/\/x.com\/oscarmartin\",\"https:\/\/www.youtube.com\/channel\/UC67-7lXx3s8iFFC6JdY1-XQ\"],\"url\":\"https:\/\/kinsta.com\/es\/blog\/author\/oscarmartin\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"C\u00f3mo Desarrollar tu Propia Herramienta SEO con IA sin Saber Programar - Kinsta\u00ae","description":"Aprende c\u00f3mo crear un herramienta SEO sin saber programar con la ayuda de la IA y alojarla en Kinsta en esta completa gu\u00eda paso a paso.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/","og_locale":"es_ES","og_type":"article","og_title":"C\u00f3mo Desarrollar tu Propia Herramienta SEO con Inteligencia Artificial y Flask (Python), Sin Saber Programar","og_description":"Aprende c\u00f3mo crear un herramienta SEO sin saber programar con la ayuda de la IA y alojarla en Kinsta en esta completa gu\u00eda paso a paso.","og_url":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinsta.es\/","article_published_time":"2024-05-14T09:03:45+00:00","article_modified_time":"2024-05-14T09:08:34+00:00","og_image":[{"width":4800,"height":2512,"url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png","type":"image\/png"}],"author":"oscarmartin","twitter_card":"summary_large_image","twitter_description":"Aprende c\u00f3mo crear un herramienta SEO sin saber programar con la ayuda de la IA y alojarla en Kinsta en esta completa gu\u00eda paso a paso.","twitter_image":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask-1024x536.png","twitter_creator":"@oscarmartin","twitter_site":"@Kinsta_ES","twitter_misc":{"Escrito por":"oscarmartin","Tiempo de lectura":"25 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/"},"author":{"name":"oscarmartin","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/ca3808152c49de03985b749215abef33"},"headline":"C\u00f3mo Desarrollar tu Propia Herramienta SEO con Inteligencia Artificial y Flask (Python), Sin Saber Programar","datePublished":"2024-05-14T09:03:45+00:00","dateModified":"2024-05-14T09:08:34+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/"},"wordCount":4916,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/es\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png","inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/","url":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/","name":"C\u00f3mo Desarrollar tu Propia Herramienta SEO con IA sin Saber Programar - Kinsta\u00ae","isPartOf":{"@id":"https:\/\/kinsta.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png","datePublished":"2024-05-14T09:03:45+00:00","dateModified":"2024-05-14T09:08:34+00:00","description":"Aprende c\u00f3mo crear un herramienta SEO sin saber programar con la ayuda de la IA y alojarla en Kinsta en esta completa gu\u00eda paso a paso.","breadcrumb":{"@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#primaryimage","url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png","contentUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2024\/05\/Herramienta-SEO-con-Inteligencia-Artificial-y-Flask.png","width":4800,"height":2512,"caption":"Herramienta SEO con Inteligencia Artificial y Flask"},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/es\/blog\/como-desarrollar-herramienta-seo-con-ia-sin-saber-programar\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/es\/"},{"@type":"ListItem","position":2,"name":"Herramientas SEO","item":"https:\/\/kinsta.com\/es\/secciones\/herramientas-seo\/"},{"@type":"ListItem","position":3,"name":"C\u00f3mo Desarrollar tu Propia Herramienta SEO con Inteligencia Artificial y Flask (Python), Sin Saber Programar"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/es\/#website","url":"https:\/\/kinsta.com\/es\/","name":"Kinsta\u00ae","description":"Soluciones de alojamiento premium, r\u00e1pidas y seguras","publisher":{"@id":"https:\/\/kinsta.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/es\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/es\/wp-content\/uploads\/sites\/8\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/es\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinsta.es\/","https:\/\/x.com\/Kinsta_ES","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/ca3808152c49de03985b749215abef33","name":"oscarmartin","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/kinsta.com\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0bc7a7373f5a241a5a23af879c15b447?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0bc7a7373f5a241a5a23af879c15b447?s=96&d=mm&r=g","caption":"oscarmartin"},"description":"Llevo trabajando por y para internet desde hace m\u00e1s de 20 a\u00f1os. Me encanta WordPress, la creaci\u00f3n de contenidos y el Marketing de Afiliaci\u00f3n.","sameAs":["https:\/\/www.linkedin.com\/in\/oscarmartinh\/","https:\/\/x.com\/oscarmartin","https:\/\/www.youtube.com\/channel\/UC67-7lXx3s8iFFC6JdY1-XQ"],"url":"https:\/\/kinsta.com\/es\/blog\/author\/oscarmartin\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/74668","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/users\/97"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/comments?post=74668"}],"version-history":[{"count":15,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/74668\/revisions"}],"predecessor-version":[{"id":74980,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/posts\/74668\/revisions\/74980"}],"alternate":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/kinsta\/v1\/posts\/74668\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/media\/74942"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/media?parent=74668"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/tags?post=74668"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/es\/wp-json\/wp\/v2\/topic?post=74668"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}