okfn-brasil / querido-diario

📰 Diários oficiais brasileiros acessíveis a todos | 📰 Brazilian government gazettes, accessible to everyone.
https://queridodiario.ok.org.br/
MIT License
1.04k stars 384 forks source link

Adiciona novos 10 raspadores da Paraíba #1185

Open trevineju opened 3 days ago

trevineju commented 3 days ago

AO ABRIR uma Pull Request de um novo raspador (spider), marque com um X cada um dos items da checklist abaixo. Caso algum item não seja marcado, JUSTIFIQUE o motivo.

Layout do site publicador de diários oficiais

Marque apenas um dos itens a seguir:

Código da(s) spider(s)

Descrição

Adiciona 10 raspadores da lista de #1082

Testes e verificações serão realizadas por @rochamatcomp

rochamatcomp commented 3 days ago

Mapa dos municípios

querido_diario_#1185

rochamatcomp commented 2 days ago

Jacaraú - PB: 2507309

Coleta última edição

coleta_ultima_edicao_pb_jacarau.csv coleta_ultima_edicao_pb_jacarau.log

Diários oficiais coletados corretamente. Arquivos auxiliares conferidos.

Coleta intervalo

coleta_intervalo_pb_jacarau.csv coleta_intervalo_pb_jacarau.log

'log_count/ERROR': 2

querido-diario/data_collection/gazette/spiders/base/adiarios_v1.py", line 41, in parse_page
    edition_number = re.search(r":\s*(\d+).*/", text).group(1)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'group'

Ao inspecionar a execução, verifiquei que a expressão regular procura por um número de edição, mas é um texto EDIÇÃO ESPECIAL.

text
' Diário Oficial: EDIÇÃO ESPECIAL/2024 '

Coleta completa

coleta_completa_pb_jacarau.csv coleta_completa_pb_jacarau.log

Acontecem os mesmos erros da coleta intervalo, acima.

Todas esses têm como 'número' da edição a palavra ESPECIAL: Diário Oficial: EDIÇÃO ESPECIAL/2024 - Volume: 1 - Número: EDIÇÃO ESPECIAL de 16 de Abril de 2024 - EXECUTIVO 16/04/2024 Diário Oficial: EDIÇÃO ESPECIAL/2024 - Volume: 1 - Número: EDIÇÃO ESPECIAL de 14 de Abril de 2024 - EXECUTIVO 14/04/2024 Diário Oficial: EDIÇÃO ESPECIAL/2024 - Volume: 1 - Número: EDIÇÃO ESPECIAL de 1 de Abril de 2024 - EXECUTIVO 01/04/2024 Diário Oficial: EDIÇÃO ESPECIAL/2024 - Volume: 1 - Número: EDIÇÃO ESPECIAL de 21 de Janeiro de 2024 - EXECUTIVO 21/01/2024 Diário Oficial: EDIÇÃO ESPECIAL/2023 - - EXECUTIVO 30/11/2023 Diário Oficial: EDIÇÃO ESPECIAL/2023 - DIÁRIO OFICIAL – EDIÇÃO ESPECIAL. - EXECUTIVO 23/11/2023 Diário Oficial: EDIÇÃO ESPECIAL/2023 - DIÁRIO OFICIAL - EDIÇÃO ESPECIAL. - EXECUTIVO 19/11/2023 Diário Oficial: EDIÇÃO ESPECIAL/2023 - EDIÇÃO ESPECIAL, DE 06 DE OUTUBRO DE 2023. - EXECUTIVO 06/10/2023 Diário Oficial: EDIÇÃO ESPECIAL/2023 - DIÁRIO OFICIAL - EDIÇÃO ESPECIAL. - EXECUTIVO 26/04/2023 Diário Oficial: EDIÇÃO ESPECIAL/2023 - DIÁRIO OFICIAL - EDIÇÃO ESPECIAL. - EXECUTIVO 20/04/2023 Diário Oficial: EDIÇÃO ESPECIAL/2023 - DIÁRIO OFICIAL - EDIÇÃO ESPECIAL. - EXECUTIVO 02/01/2023 Diário Oficial: EDIÇÃO ESPECIAL/2019 - PORTARIA Nº 118A, DE 07 DE MARÇO DE 2019 - NOMEAÇÃO DE MARLO SILVA DE LIMA. - EXECUTIVO 07/03/2019

rochamatcomp commented 2 days ago

Uma opção seria capturar a exceção e usar valor padrão como edição:

try:
    edition_number = re.search(r":\s*(\d+).*/", text).group(1)
except AttributeError:
    edition_number = 'undefined'