Ingobernable / kaos155

Programa de analisis de Contratación con la administración pública y relaciones societarias en España.
GNU General Public License v3.0
17 stars 7 forks source link

TESTEAR que SCRAPEA todos los años correctamente hasta el final #6

Open Softman65 opened 6 years ago

Softman65 commented 6 years ago

Consideraciones de la DB.

A) cada AÑO y TIPO van en una tabla distinta. B) anyosRead lleva un control de los años ya escrapeados y si están ya completados. C) sumarios realiza una lista de todos los sumarios extraídos poniendo una marca si la operación de completo . D) la tabla errores recoje los errores de aquellos boletines que no han cargado correctamente. E) en el caso de BOE tiene un campo de anotación para anotar errores encontrados en el formato. F) en el caso BOE obtendremos también un JSON con los metadatos y el analisis del BOE.

Trabajo a realizar informar de posibles anomalías y detección de boletines no legibles objetivo. scrapear todos los boletines todos los años obteniendo la base de datos con los TEXTOS de CONTRATOS y REGISTRO MERCANTIL

j-lml commented 6 years ago

yo pondría etiqueta scrapeo

ghost commented 6 years ago

Tengo fallos al scrapear.

Paso a relatar el proceso:

# node app
kaos155 App - version -0.1.3.
? command (Use arrow keys)
❯ SCRAP 
  PARSER 
  DELETE 
  EXIT 

Tras elegir SCRAP selecciono BORME y luego 2009. El error me ocurre con todos los años:

# node app
kaos155 App - version -0.1.3.
? command SCRAP
? tipo BORME
new connection SCRAP mysql OK
? anyo  2009
MySQL IP:localhost
PROCESS:BORME
Anyo:2009
new connection BORME mysql OK
/home/ricardo/kaos155/app/node_modules/mysql/lib/protocol/Parser.js:80
        throw err; // Rethrow non-MySQL errors
        ^

TypeError: Cannot read property '0' of undefined
    at Query._callback (/home/ricardo/kaos155/app/node_app/sql_common.js:184:39)
    at Query.Sequence.end (/home/ricardo/kaos155/app/node_modules/mysql/lib/protocol/sequences/Sequence.js:88:24)
    at Query.ErrorPacket (/home/ricardo/kaos155/app/node_modules/mysql/lib/protocol/sequences/Query.js:90:8)
    at Protocol._parsePacket (/home/ricardo/kaos155/app/node_modules/mysql/lib/protocol/Protocol.js:279:23)
    at Parser.write (/home/ricardo/kaos155/app/node_modules/mysql/lib/protocol/Parser.js:76:12)
    at Protocol.write (/home/ricardo/kaos155/app/node_modules/mysql/lib/protocol/Protocol.js:39:16)
    at Socket.<anonymous> (/home/ricardo/kaos155/app/node_modules/mysql/lib/Connection.js:103:28)
    at emitOne (events.js:116:13)
    at Socket.emit (events.js:211:7)
    at addChunk (_stream_readable.js:263:12)

No me ocurre el error con SCRAP BOE ni con SCRAP BOCM .

¿A alguien más le ocurre?

ghost commented 6 years ago

En SCRAP BOE 1995 al rato me salta esto:

######################################################################################ERROR http://81.89.32.200/diario_boe/xml.php?id=BOE-S-19950128 response sin encoding valido
error de lectura de SUMARIO url [object Object]
#####################################################
j-lml commented 6 years ago

@fantalavapies , a mi no me ha dado fallo pero estoy probando con BORME. He completado 2009 y he lanzado en paralelo 10 al 17

ghost commented 6 years ago

Con el código de la rama master daba problemas esta línea (me lo ha comentado ricardo):

SET _ki = '.KEYprov(provincia),KEYprov_mes(provincia,mes) ';

se ha sustituido por esta (con ,KEY en vez de .KEY):

SET _ki = ',KEYprov(provincia),KEYprov_mes(provincia,mes) ';

En el archivo del dump sql SCRAP.

Ahora va bien de momento el scrapeo :).

ghost commented 6 years ago

¿Respecto a BOE si son estructuras diferentes antes del 2001 ha de dejarnos poder elegir 1995? Si fallan antes del 2001 en lo que a BOE se refiere entonces mejor que no los muestre para seleccionar o si?.

Saludos.

Softman65 commented 6 years ago

lo que no se es de donde ha salido eso de 1995 ?

ghost commented 6 years ago

1995

Cuando seleccionas SCRAP BOE te permite desde el año 1995.

ghost commented 6 years ago

Ricardo fijate en las capturas que adjunto. El scrapeo va bien hasta que peta en algún boletín que no funciona ya que no existe !

desde1995-001

pero a los pocos minutos llega al día 28 de enero de 1995:

desde1995-002

Y peta.

Peta por esto:

http://81.89.32.200/diario_boe/xml.php?id=BOE-S-19950128 `

Sumario XML no encontrado.

Que puede comprobarse desde aquí igualmente: http://81.89.32.200/boe/dias/1995/01/28/ Error: Ha ocurrido un error cargando el sumario ` Y si nos fijamos en 1995 tienen enlace a ese boletín pero peta.

Softman65 commented 6 years ago

vale pero no te habrá capturado ningún text o pocos, el error esta en el MENU, la fecha primera estable para BOE es 2001

Softman65 commented 6 years ago

linea 12 de app dice: Mins: { BOE: 1995, BOCM: 2010, BORME: 2009 }, deveria decir: Mins: { BOE: 2001, BOCM: 2010, BORME: 2009 }

modificado master.

Softman65 commented 6 years ago

en realidad en las imagenes no veo simbolos + que corresponde a la captura de contrato

ghost commented 6 years ago

Por el momento BOE me lo scrapea entero. Borme tarda más de modo que aún anda el tema. Ando usando el script en bash que he puesto en App:

bash scraping.sh --stop bash scraping.sh --start bash scraping.sh --monitor

Veamos si mañana ha terminado.