[PYTHON] Abrir página web y saber si hay internet.

Iniciado por dimineko, 20 Noviembre 2016, 14:27 PM

0 Miembros y 1 Visitante están viendo este tema.

dimineko

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.

Once

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 (python) [Seleccionar]
import webbrowser
chromium = webbrowser.get("Chromium")
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!

dimineko

Cita de: 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 (python) [Seleccionar]
import webbrowser
chromium = webbrowser.get("Chromium")
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 (python) [Seleccionar]
import time
import os
import webbrowser


navegador = webbrowser.get("chrome")
navegador.open("elpais.es")



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

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

engel lex

Citarpero 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
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

dimineko

Cita de: engel lex en 22 Noviembre 2016, 19:05 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..

tincopasan

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 (python) [Seleccionar]

import webbrowser
webbrowser.register('chrome', None, webbrowser.GenericBrowser('C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'))
navegador = webbrowser.get("chrome")
navegador.open("elpais.es")

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.

dimineko

Cita de: 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 (python) [Seleccionar]

import webbrowser
webbrowser.register('chrome', None, webbrowser.GenericBrowser('C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'))
navegador = webbrowser.get("chrome")
navegador.open("elpais.es")

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...