taller-web-scraping-hirikilabs:descarga_sigpac_navarra
Descarga de ficheros municipales del SIGPAC de Navarra
- Comprobar en la página web [http://sigpac.navarra.es/descargas/] la estructura de la URL de descarga.
- Descargar los códigos de los municipios de Navarra (códigos INE). Se pueden descargar desde la propia web del INE (Instituto Nacional de Estadística) [http://www.ine.es/daco/daco42/codmun/codmun17/17codmunmapa.htm ]
- Crear un Array con todos códigos de municipio, para así iterar y poder crear la URL de cada municipio.
- Crear un bucle que crea una URL completa de cada código de municipio, recorriendo el Array creado en el paso 3. El bucle irá desde 0 a la longitud del Array-1.
- Añadir el paquete wget a python para poder descargar directamente los ficheros .zip
- Añadir el paquete zipfile para poder trabajar con los archivos .zip
- Crear un archivo .zip e ir añadiendo los ficheros descargados.
- Borrar los archivos descargados (importando el paquete os)
Autores: Marisa (mmansorena@gmail.com) eta Mikel (m.ayesta@gislan.eus)
import csv
import urllib2
import random
from bs4 import BeautifulSoup
import wget #paquete para poder descargar directamenete los ficheros
import zipfile #paquete para trabajar con *.zip
import os #paquete para poder borrar los ficheros descargados
#creamos el array
lista_cod_muni= [
'001',
'002',
'003',
'004',
'005',
'006',
'007',
'008',
'009',
'010',
'011',
'012',
'013',
'014',
'015',
'016',
'017',
'018',
'019',
'020',
'021',
'022',
'023',
'024',
'025',
'026',
'027',
'028',
'029',
'030',
'031',
'032',
'033',
'034',
'035',
'036',
'037',
'038',
'039',
'040',
'041',
'042',
'043',
'044',
'045',
'046',
'047',
'048',
'049',
'050',
'051',
'052',
'053',
'054',
'055',
'056',
'057',
'058',
'059',
'060',
'061',
'062',
'063',
'064',
'065',
'066',
'067',
'068',
'069',
'070',
'071',
'072',
'073',
'074',
'075',
'076',
'077',
'078',
'079',
'080',
'081',
'082',
'083',
'084',
'085',
'086',
'087',
'088',
'089',
'090',
'091',
'092',
'093',
'094',
'095',
'096',
'097',
'098',
'099',
'100',
'101',
'102',
'103',
'104',
'105',
'106',
'107',
'108',
'109',
'110',
'111',
'112',
'113',
'114',
'115',
'116',
'117',
'118',
'119',
'120',
'121',
'122',
'123',
'124',
'125',
'126',
'127',
'128',
'129',
'130',
'131',
'132',
'133',
'134',
'135',
'136',
'137',
'138',
'139',
'140',
'141',
'142',
'143',
'144',
'145',
'146',
'147',
'148',
'149',
'150',
'151',
'152',
'153',
'154',
'155',
'156',
'157',
'158',
'159',
'160',
'161',
'162',
'163',
'164',
'165',
'166',
'167',
'168',
'169',
'170',
'171',
'172',
'173',
'174',
'175',
'176',
'177',
'178',
'179',
'180',
'181',
'182',
'183',
'184',
'185',
'186',
'187',
'188',
'189',
'190',
'191',
'192',
'193',
'194',
'195',
'196',
'197',
'198',
'199',
'200',
'201',
'202',
'203',
'204',
'205',
'206',
'207',
'208',
'209',
'210',
'211',
'212',
'213',
'214',
'215',
'216',
'217',
'219',
'220',
'221',
'222',
'223',
'224',
'225',
'226',
'227',
'228',
'229',
'230',
'231',
'232',
'233',
'234',
'235',
'236',
'237',
'238',
'239',
'240',
'241',
'242',
'243',
'244',
'245',
'246',
'247',
'248',
'249',
'250',
'251',
'252',
'253',
'254',
'255',
'256',
'257',
'258',
'259',
'260',
'261',
'262',
'263',
'264',
'265',
'901',
'902',
'903',
'904',
'905',
'906',
'907',
'908'
]
archivo_zip = zipfile.ZipFile('sigpac_navarra.zip', 'w') #creamos y abrimos el archivo *.zip
# crear el bucle desde 0 a la longitud de la lista -1
for i in range(0,len(lista_cod_muni)-1):
url = 'http://sigpac.navarra.es/descargas/municipios/SGP2018_Mun'+str(lista_cod_muni[i])+'.zip' #crear la url, introduciendo el valor del elemento de la lista
wget.download(url) #descaragar la url
archivo_zip.write('SGP2018_Mun'+str(lista_cod_muni[i])+'.zip') #anadimos el fichero descargado a sigpac_navarra.zip
os.remove('SGP2018_Mun'+str(lista_cod_muni[i])+'.zip') #borramos el archivo descargado para que no ocupe sitio
break #acabamos el bucle a la primera para las pruebas
archivo_zip.close() #cerramos el archivo sigpac_navarra.zip
taller-web-scraping-hirikilabs/descarga_sigpac_navarra.txt · Última modificación: por ayesta