Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: dimineko en 20 Noviembre 2016, 14:27 pm



Título: [PYTHON] Abrir página web y saber si hay internet.
Publicado por: dimineko en 20 Noviembre 2016, 14:27 pm
Buenas.

Hace poco empece aqui con el señor Python y la verdad me esta gustando bastante.Aún asi,aun soy un auntentico novato y pues venía a pediros ayuda en unas dudas xD...
La primera es :
¿Cómo hago que python me abra una página web con un navegador en concreto(en este caso Google Chrome)?
La segunda :
¿Cómo puedo hacer que Python detecte si en el dispositivo hay una conexión a internet activa?(Que detecte si hay internet o no en resumen..)

Muchísimas gracias de antemano,y perdón por las molestias.


Título: Re: [PYTHON] Abrir página web y saber si hay internet.
Publicado por: Once en 20 Noviembre 2016, 15:59 pm
Hola, para abrir la página web, Python tiene un módulo llamado webbrowser y el navegador lo seleccionas con el método get

Código
  1. import webbrowser
  2. chromium = webbrowser.get("Chromium")
  3. chromium.open("web")

Y para verificar si hay internet puedes hacer una petición a una web, por ejemplo con urllib o con sockets y luego verificar el timeout o capturar si ocurre un error respectivamente.

Acá tienes la documentación del módulo webbrowser https://docs.python.org/2/library/webbrowser.html

Saludos!


Título: Re: [PYTHON] Abrir página web y saber si hay internet.
Publicado por: dimineko en 22 Noviembre 2016, 13:44 pm
Hola, para abrir la página web, Python tiene un módulo llamado webbrowser y el navegador lo seleccionas con el método get

Código
  1. import webbrowser
  2. chromium = webbrowser.get("Chromium")
  3. chromium.open("web")

Y para verificar si hay internet puedes hacer una petición a una web, por ejemplo con urllib o con sockets y luego verificar el timeout o capturar si ocurre un error respectivamente.

Acá tienes la documentación del módulo webbrowser https://docs.python.org/2/library/webbrowser.html

Saludos!




Buenas.
Actualmente el codigo que tengo es el siguiente :


Código
  1. import time
  2. import os
  3. import webbrowser
  4.  
  5.  
  6. navegador = webbrowser.get("chrome")
  7. navegador.open("elpais.es")


Y me da el siguiente error: (Programo en Sublime Text pero corro el codigo en repl.it (http://repl.it)

Traceback (most recent call last):
  File "python", line 1, in <module>
NameError: name 'chrome' is not defined
  


Título: Re: [PYTHON] Abrir página web y saber si hay internet.
Publicado por: engel lex en 22 Noviembre 2016, 19:05 pm
Citar
pero corro el codigo en repl.it

por qué?

obviamente un servicio online no te va a permitir abrir el navegador wen de su escritorio... este codigo es para que se inicie el navegador web (chrome) tienes que ejecutarlo en local


Título: Re: [PYTHON] Abrir página web y saber si hay internet.
Publicado por: dimineko en 27 Noviembre 2016, 15:57 pm
por qué?

obviamente un servicio online no te va a permitir abrir el navegador wen de su escritorio... este codigo es para que se inicie el navegador web (chrome) tienes que ejecutarlo en local

Cierto.
Pero aún asi,despues de leer tu comentario,lo he ejecutado desde mi propio PC y sigue sin funcionar..


Título: Re: [PYTHON] Abrir página web y saber si hay internet.
Publicado por: tincopasan en 27 Noviembre 2016, 16:54 pm
no dices que error te da! pero bueno, en  mi caso uso solo windows y muchas veces  tuve la necesidad de modificar un código como el tuyo de la siguiente forma:
Código
  1. import webbrowser
  2. webbrowser.register('chrome', None, webbrowser.GenericBrowser('C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'))
  3. navegador = webbrowser.get("chrome")
  4. navegador.open("elpais.es")
  5.  
obvio que si usas otro S.O el path varia, así que deberás adaptarlo.
de igual forma sino anda, poné que mensaje te da.


Título: Re: [PYTHON] Abrir página web y saber si hay internet.
Publicado por: dimineko en 27 Noviembre 2016, 18:09 pm
no dices que error te da! pero bueno, en  mi caso uso solo windows y muchas veces  tuve la necesidad de modificar un código como el tuyo de la siguiente forma:
Código
  1. import webbrowser
  2. webbrowser.register('chrome', None, webbrowser.GenericBrowser('C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'))
  3. navegador = webbrowser.get("chrome")
  4. navegador.open("elpais.es")
  5.  
obvio que si usas otro S.O el path varia, así que deberás adaptarlo.
de igual forma sino anda, poné que mensaje te da.


Muchisimas gracias.
He copiado tu codigo tal cual,y funciona...Pero¿Podrías explicarme como funciona?Es decir,que tiene ese codigo que no tenga el mio para que funcione...