Foros del Web » Programando para Internet » Python »

¿Como guardar el valor de una web en un vector? [PYTHON 3]

Estas en el tema de ¿Como guardar el valor de una web en un vector? [PYTHON 3] en el foro de Python en Foros del Web. Hola de nuevo! Pues eso, uso Python 3 y un modulo basico para trabajor con webs es urllib . Lo que trato de conseguir es ...
  #1 (permalink)  
Antiguo 14/11/2015, 06:50
 
Fecha de Ingreso: diciembre-2009
Ubicación: Spain
Mensajes: 180
Antigüedad: 15 años
Puntos: 9
¿Como guardar el valor de una web en un vector? [PYTHON 3]

Hola de nuevo!

Pues eso, uso Python 3 y un modulo basico para trabajor con webs es urllib. Lo que trato de conseguir es que el valor que devuelva una web consultada me lo guarde en un vector o arreglo en Python.

Conozco muy poco sobre el tema y no se ni por donde empezar. Por ejemplo, en esta web: http://www.palabrasque.com/palabra-a...=Nueva+palabra cada vez que la visitamos nos genera una palabra aleatoria. Pero claro, como hago para que esta palabra se guarde en un script (vector) de Python 3.

Si pongo este script me da error:

Código Python:
Ver original
  1. import urllib.request
  2.  
  3. palabra = urllib.request.urlopen('http://www.palabrasque.com/palabra-aleatoria.php?Submit=Nueva+palabra')

Lo que trato de hacer, es poder capturar un retorno de una web que se visite. Ya comento que utilizo Python 3. Lo digo, por que creo, que con Python 2.xx cambia un poco el modulo urllib

...Gracias!
  #2 (permalink)  
Antiguo 14/11/2015, 12:46
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: ¿Como guardar el valor de una web en un vector? [PYTHON 3]

Y que error te da?
  #3 (permalink)  
Antiguo 14/11/2015, 13:02
 
Fecha de Ingreso: diciembre-2009
Ubicación: Spain
Mensajes: 180
Antigüedad: 15 años
Puntos: 9
Respuesta: ¿Como guardar el valor de una web en un vector? [PYTHON 3]

Cita:
Iniciado por razpeitia Ver Mensaje
Y que error te da?
Bueno, en si me da varios errores son esa simple linea. Pero para resumir (uso el editor Wing IDE) cuando ejecuto ese script, el editor me abre el modulo request.py y me marca esta linea en rojo:

Código Python:
Ver original
  1. raise HTTPError(req.full_url, code, msg, hdrs, fp)

Ya comento, que es la primera vez que uso ese modulo e igual no lo utilizo bien. Lo que trato de hacer, es que tomando como ejemplo esa web (que podria ser otra) me capture la palabra en una lista. De hecho, en esa web no hace falta pulsar el boton para generar una palabra. Ya que cada vez que la visitamos nos devuelve una nueva. Se trata de poner ese enlace de la pagina en nuestro script y que el retorno de la palabra se almacene en una variable o matriz.

Hay webs que pulsando un boton generan frases, numeros, palabras, etc...pues trato de capturar los resultados en una lista.
  #4 (permalink)  
Antiguo 14/11/2015, 14:25
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: ¿Como guardar el valor de una web en un vector? [PYTHON 3]

A mi me da un 403 (forbbiden request).

Yo le un user agent y funciono como debería.

Código Python:
Ver original
  1. import urllib.request
  2.  
  3. req = urllib.request.Request(url='http://www.palabrasque.com/palabra-aleatoria.php?Submit=Nueva+palabra',data=b'None',headers={'User-Agent':' Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0'})
  4. with urllib.request.urlopen(req) as handler:
  5.     data = handler.read()
  6.     print(data)
  #5 (permalink)  
Antiguo 15/11/2015, 06:28
 
Fecha de Ingreso: diciembre-2009
Ubicación: Spain
Mensajes: 180
Antigüedad: 15 años
Puntos: 9
Respuesta: ¿Como guardar el valor de una web en un vector? [PYTHON 3]

Cita:
Iniciado por razpeitia Ver Mensaje
A mi me da un 403 (forbbiden request).

Yo le un user agent y funciono como debería.

Código Python:
Ver original
  1. import urllib.request
  2.  
  3. req = urllib.request.Request(url='http://www.palabrasque.com/palabra-aleatoria.php?Submit=Nueva+palabra',data=b'None',headers={'User-Agent':' Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0'})
  4. with urllib.request.urlopen(req) as handler:
  5.     data = handler.read()
  6.     print(data)
Como comente, seguramente soy yo que no capto como funciona este modulo o sus funciones. El script que has posteado si retorna algo. Pero claro, es un sin fin de palabras, comandos o instrucciones. Yo lo que trato de capturar, es el resultado que ofrece esa pagina. Osea, una simple palabra. Gracias de todas formas.
  #6 (permalink)  
Antiguo 16/11/2015, 00:46
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 9 meses
Puntos: 1360
Respuesta: ¿Como guardar el valor de una web en un vector? [PYTHON 3]

Pues claro es el html de la pagina ocupas parsearlo y obtener lo que quieres.

Etiquetas: valor, vector
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:07.