es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo cerrar un sitio web desde una aplicación de Python?

Tengo una aplicación de Linux python que ejecuta una aplicación web php en un servidor, que solicita datos de una base de datos MySql y guarda la respuesta en un archivo de texto en el servidor. Puedo descargar el archivo de texto desde el servidor usando pysftp, sin embargo… tengo que cerrar manualmente la aplicación web. Luego, inicio otra aplicación python pasándole los datos del archivo de texto.

No puedo encontrar una forma de cerrar la aplicación web utilizando código. Me gusta w3m porque se ejecuta desde la terminal. Puedo cerrarlo usando Shift+Q. Puedo cerrarlo con las mayúsculas activadas y pulsando Q para que no requiera dos teclas. Pero no puedo encontrar una forma de enviar Shift+Q programáticamente. También he intentado y puedo ejecutar Firefox y Chrome desde python, pero no puedo encontrar una forma de cerrarlos utilizando código ni en mi aplicación php ni en mi aplicación python.

He intentado lo obvio:

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Solución para cerrar una aplicación web programáticamente

    El problema aquí es que la aplicación web necesita cerrarse de forma programática después de descargar el archivo de texto para poder iniciar otra aplicación de Python con los datos del archivo de texto. Sin embargo, el usuario no encuentra una forma de cerrar la aplicación web usando código.

    Una posible solución es utilizar un navegador sin interfaz gráfica, como Selenium, para automatizar el proceso de cierre de la aplicación web. Selenium es una herramienta popular para automatizar navegadores web y puede utilizarse con Python para controlar Firefox o Chrome.

    Estos son los pasos para cerrar la aplicación web usando Selenium:

    1. Instalar Selenium usando pip:
      pip install selenium
      
    2. Descargar el controlador adecuado para Firefox o Chrome:
    1. Iniciar la aplicación web en el navegador elegido usando Selenium:

      from selenium import webdriver
      
      # crear una instancia del controlador de Firefox
      driver = webdriver.Firefox()
      
      # navegar hacia la aplicación web
      driver.get('http://webapp-url.com')
      

    2. Utilizar Selenium para localizar el elemento que corresponde al botón “cerrar” en la aplicación web y hacer clic en él:
      # localizar el elemento del botón de cierre
      close_button = driver.find_element_by_xpath('//button[@class="close-button"]')
      
      # hacer clic en el botón de cierre
      close_button.click()
      
    3. Cerrar la instancia del controlador de Selenium:
      driver.quit()
      

    Una vez que la aplicación web se haya cerrado utilizando Selenium, el usuario puede iniciar otra aplicación de Python pasando los datos del archivo de texto.

    Nota: el código específico para localizar el elemento del botón de cierre y hacer clic en él dependerá de la estructura HTML de la aplicación web. El usuario puede utilizar las herramientas de desarrollo del navegador para inspeccionar el HTML y encontrar el elemento adecuado para seleccionar.

Comments are closed.