Obtener datos de una pagina web externa
Publicado por Francisco José (6 intervenciones) el 14/03/2017 00:11:08
Hola, esto creandome una aplicacion web para poder catalogar películas. Quiero poder sacar datos de páginas web para poder rellenar fichas de películas.
Con el código anterior consigo cargar la página web y usando los metodos de BeautifulSoup consigo aceder mas o menos a la información que necesito. El problema es que muchas páginas tienen un estructura muy engorrosa y con los metodos de las clase anterior no me llega.
También he probado lxml
He hecho pruebas con un .xml en mi disco duro y me resulta mas facil de acceder a la información.
Si hay alguna forma de la pagina que me llega transformarla en un .xml que pueda manipular con la libreria lxml. Soy novato en python y django y llevo años sin tocar programación, ya que aunque lo estudié no me dedico a esto, asi que a ver si alguien me puede ayudar.
Saludos.
1
2
3
4
5
6
7
8
from bs4 import BeautifulSoup
import urllib3
url = "http://www.google.es"
http = urllib3.PoolManager()
response = http.request('GET', url)
soup = BeautifulSoup(response.data, "lxml"]
info = soup.find('dl', {'class': 'principal'})
Con el código anterior consigo cargar la página web y usando los metodos de BeautifulSoup consigo aceder mas o menos a la información que necesito. El problema es que muchas páginas tienen un estructura muy engorrosa y con los metodos de las clase anterior no me llega.
También he probado lxml
1
2
3
4
from lxml import etree
doc = etree.parse('D:\\test.xml')
r = doc.xpath('/texto/mensaje[@class="mensaje1"]/following-sibling::*[1]')
He hecho pruebas con un .xml en mi disco duro y me resulta mas facil de acceder a la información.
Si hay alguna forma de la pagina que me llega transformarla en un .xml que pueda manipular con la libreria lxml. Soy novato en python y django y llevo años sin tocar programación, ya que aunque lo estudié no me dedico a esto, asi que a ver si alguien me puede ayudar.
Saludos.
Valora esta pregunta
0