Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cria base ptio e adiciona 4 municipios do RJ #1263

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

slfabio
Copy link
Collaborator

@slfabio slfabio commented Sep 7, 2024

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:

  • O layout não se parece com nenhum caso da lista de layouts padrão
  • É um layout padrão e esta PR adiciona a spider base do padrão ao projeto junto com alguns municípios que fazem parte do padrão.
  • É um layout padrão e todos os municípios adicionados usam a classe de spider base adequada para o padrão.

Código da(s) spider(s)

  • O(s) raspador(es) adicionado(s) tem os atributos de classe exigidos.
  • O(s) raspador(es) adicionado(s) cria(m) objetos do tipo Gazette coletando todos os metadados necessários.
  • O atributo de classe start_date foi preenchido com a data da edição de diário oficial mais antiga disponível no site.
  • Explicitar o atributo de classe end_date não se fez necessário.
  • Não utilizo custom_settings em meu raspador.

Testes

  • Uma coleta-teste da última edição foi feita. O arquivo de .log deste teste está anexado na PR.
  • Uma coleta-teste por intervalo arbitrário foi feita. Os arquivos de .loge .csv deste teste estão anexados na PR.
  • Uma coleta-teste completa foi feita. Os arquivos de .log e .csv deste teste estão anexados na PR.
    log.zip

Verificações

  • Eu experimentei abrir alguns arquivos de diários oficiais coletados pelo meu raspador e verifiquei eles conforme a documentação não encontrando problemas.
  • Eu verifiquei os arquivos .csv gerados pela minha coleta conforme a documentação não encontrando problemas.
  • Eu verifiquei os arquivos de .log gerados pela minha coleta conforme a documentação não encontrando problemas.

Descrição

resolve #1113
Cria base ptio e spiders para os municípios do RJ que estão mapeados na #1114 : Areal, Cabo Frio, Comendador Levy Gasparian e Sapucaia.

Obs1: Há diários com mesmo número de edição e data que não são edições extras, pois cada edição pode conter cadernos publicados em arquivos diferentes.
Para os 4 municípios tratados não foi possível localizar edições extras e todos são exclusivamente do executivo. Ao adicionar novos municípios mapeados na issue #1114, talvez seja necessário adaptar o código do base para validar o poder e a edição extra.

Obs2: Cabo Frio até o fim de agosto/2024 usava o sistema PTIO, mas a partir de Setembro/2024 passou a usar base instar.

Obs3. Não foi utilizado o nome padrão parse para a base ptio (ficou ptio_parse), pois, como rj_cabo_frio tem herança múltipla, se o start_requests das duas classes mães redirecionassem para um método de mesmo nome, a requisição iria sempre para o classe mãe declarada à esquerda no "class RjCaboFrioSpider".

@slfabio slfabio changed the title #1113 cria base ptio e adiciona 4 municipios do RJ Cria base ptio e adiciona 4 municipios do RJ Sep 8, 2024
@trevineju
Copy link
Member

trevineju commented Sep 13, 2024

Oi, @slfabio. Não realmente revisei profundamente ainda, mas bati o olho aqui e suas obs me chamaram atenção. Nesse ponto aqui...

Obs2: Cabo Frio até o fim de agosto/2024 usava o sistema PTIO, mas a partir de Setembro/2024 passou a usar base instar.

Obs3. Não foi utilizado o nome padrão parse para a base ptio (ficou ptio_parse), pois, como rj_cabo_frio tem herança múltipla, se o start_requests das duas classes mães redirecionassem para um método de mesmo nome, a requisição iria sempre para o classe mãe declarada à esquerda no "class RjCaboFrioSpider".

... gostaria de pedir que separe a spider em duas, assim como temos pe_recife_2015 e pe_recife_2020. Aqui no caso, ficaria uma spider que usa ptio e tem o atributo end_date e outra que usa instar, sem end_date. O padrão de nome também recebe o ano de início. Isso também resolve o problema de parse vs ptio_parse

Na realidade, é uma situação que temos coisas a discutir e decidir ainda (só um exemplo: #1149), mas como no momento temos adotado a separação por intervalo, vamos segui-lo.

@trevineju
Copy link
Member

E isso me fez perceber que essa orientação não consta na docs do QD. Vou adicioná-la

@slfabio
Copy link
Collaborator Author

slfabio commented Sep 16, 2024

Bom dia @trevineju,

quando eu criei o código, semana passada, no novo sistema (BaseInstar) só constavam os diários novos (a partir de set/2024), quando fui olhar agora para fazer os ajustes que você pediu, percebi que todos os Diários anteriores a set/2024 já constam no novo sistema.

Com a migração dos diários anteriores, Cabo Frio pode ficar com um único spider BaseInstar, e como não terá mais nenhuma relação com a BasePtio, retirei o código de Cabo Frio dessa PR e vou abrir uma nova issue específica para Cabo Frio, ok?

@trevineju
Copy link
Member

retirei o código de Cabo Frio dessa PR e vou abrir uma nova issue específica para Cabo Frio, ok?

perfeito, obrigada!

(show o forced-push tb 😉)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

Successfully merging this pull request may close these issues.

[Novo spider base]: ptio
2 participants