Obras del Museo del Prado

Intentamos sacar litografias y grabados de arte de Milanuncios, desestimamos mil anuncios por la cantidad de filtros que nos impiden objetivo.

A lo grande Cristina y yo iremos a por el Museo del Prado.

Web: https://www.museodelprado.es

Nos acercamos a la búsqueda y utilizando el truco de asteriscos * sacamos la cantidad de obras 15361 resultados

Ahora a por ellos e intentar bajarlos todos https://www.museodelprado.es/coleccion/obras-de-arte?searchObras=*

import csv
import urllib2
from bs4 import BeautifulSoup

# Soy Mozilla
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36'
}

outputpath = "links.csv"

with open(outputpath, "w") as outfile:

    writer = csv.writer(outfile)
    for counter in range(1,1111):

        url = 'https://www.museodelprado.es/coleccion/obras-de-arte?searchObras=*********|pagina='+str(counter)

        # Get URL
        response = urllib2.Request(url,headers=headers)
        pagedata = urllib2.urlopen(response)
        html = pagedata.read()

        # Get links
        soup = BeautifulSoup(html, "html.parser")
        links = soup.select('.mostrable figcaption dl dt a')
        # autor = soup.select('.mostrable figcaption dl .autor a')

        for link in links:
            print link.get_text()
            writer.writerow([link.get_text().encode("utf-8")])

Funciona perfectamente con pequeño problema de duplicados que repararemos.

Creadores Cristina Miranda cristmiranda@telefonica.net Oscar Frutos pcorax@gmail.com