Python - No puedo extraer codigo fuente de un url en Python

 
Vista:
sin imagen de perfil

No puedo extraer codigo fuente de un url en Python

Publicado por Bango (7 intervenciones) el 05/07/2015 16:14:24
Hola a tad@s,

Soy novato en programación en Python, y estoy intentado conseguir datos de una pagina web, pongo un ejemplo que esta en youtube, a mi no me sale,

1
2
3
4
5
6
7
8
9
10
11
12
13
import urllib.request
import re
 
url = "http://finance.yahoo.com/q?s=aapl&ql=1"
htmltext = urllib.request.urlopen(url)
htmltext = htmltext.read()
htmltext = htmltext.decode("utf")
print(htmltext) --> aqui sale la mitad del codigo fuente
regex = '<span id=\"yfs_184_aapl\">(.+?)<\span>'
pattern = re.compile(regex)
price = re.findall(pattern, htmltext)
 
print(price) --> [ ]

Porfavor si me pueden ayudar de resolver pq no me sale todo el codigo fuente.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

No puedo extraer codigo fuente de un url en Python

Publicado por xve (1646 intervenciones) el 05/07/2015 19:15:48
Hola Bango, he revisado la pagina a la que haces referencia, y no existe el id que estas buscando!!!

No puedo probar tu ejemplo, ya que no dispongo de la versión 3 de urllib y funciona diferente.

Si pones un id correcto, tendría que funcionar-te.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No puedo extraer codigo fuente de un url en Python

Publicado por Bango (7 intervenciones) el 05/07/2015 19:44:16
Si que hay en el codigo fuente de la http://finance.yahoo.com/q?s=aapl&ql=1
<span id="yfs_l84_aapl">126.44</span>
la busqueda esta heciento sobre contenido de htmltext que no tiene todo el codigo fuente, no se porque?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

No puedo extraer codigo fuente de un url en Python

Publicado por xve (1646 intervenciones) el 06/07/2015 09:21:32
Hola Bango, siento decirte, que yo busco ese id, y no me aparece en el código fuente...¿? lo he mirado desde el navegador, haciendo ver código fuente...

Pero si que he probado en la consola de Python que funcione... y lo he hecho así:
1
2
3
4
import re
a="""hola <span id="yfs_184_aapl">127</span> que tal"""
pattern=re.compile('<span id="yfs_184_aapl">(.*)</span>')
pattern.findall(a)

Esto devuelve: ['127']

Espero que te sirva...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No puedo extraer codigo fuente de un url en Python

Publicado por Bango (7 intervenciones) el 07/07/2015 00:01:25
Hola,
Muchas gracias xve, si me funciona ahora.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

No puedo extraer codigo fuente de un url en Python

Publicado por xve (1646 intervenciones) el 06/07/2015 09:23:02
Sobre descargar la pagina entera, ahora no dispongo de urllib, pero con urllib3 es así:

1
2
3
4
5
6
7
import urllib3
 
url = "http://finance.yahoo.com/q?s=aapl&ql=1"
 
http = urllib3.PoolManager(timeout=5.0)
r = http.urlopen('GET', url)
htmltext=r.read()

Espero que te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No puedo extraer codigo fuente de un url en Python

Publicado por Bango (7 intervenciones) el 07/07/2015 00:07:18
Hola,
En python 3, ya no hay urllib2 ni urllib3, solamente urllib, ahora estoy descobriendo algunos cambios. Es porque no me funciona el codigo, en python 3 no accepta muchas cosas anteriores como la linea r = http.urlopen('GET', url).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No puedo extraer codigo fuente de un url en Python

Publicado por Bango (7 intervenciones) el 07/07/2015 23:18:03
Pero me queda la pregunta clave, porque no puedo obtenir todo el codigo fuente de un link?
a = "http://finance.yahoo.com/q?s=aapl&ql=1"
a=urllib.request.urlopen(a)
a = a.read()
a = a.decode('utf-8')
print(a) --> aqui no imprima todo

Necesito buscar mas datos, pero por python no salen los datos que estan en la parte oculta?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

No puedo extraer codigo fuente de un url en Python

Publicado por xve (1646 intervenciones) el 08/07/2015 10:55:24
Hola Bango, yo veo que si esta la pagina entera...

A que datos te refieres con los que están en la parte oculta? ... ten en cuenta que no descarga el contenido que viene por javascript!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar