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

Add ValeGazetteSpider e alguns municípios que a utilizam #1127

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

vcoelh
Copy link

@vcoelh vcoelh commented Apr 12, 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.

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

Esse PR resolve #1116 assim como adiciona mais três municípios (to_buriti_do_tocantins, to_pium, to_cristalandia)

Coleta-teste completa:
to_buriti_do_tocantins-full-extraction.csv
to_buriti_do_tocantins-full-extraction.log

to_pium-full-extraction.csv
to_pium-full-extraction.log

to_cristalandia-full-extraction.csv
to_cristalandia-full-extraction.log

Coleta-teste intervalo arbitrário:

to_buriti_do_tocantins-2022-12-31--2024-04-11.csv
to_buriti_do_tocantins-2022-12-31--2024-04-11.log

to_pium-2022-12-31--2024-04-11.csv
to_pium-2022-12-31--2024-04-11.log

to_cristalandia-2022-12-31--2024-04-11.csv
to_cristalandia-2022-12-31--2024-04-11.log

Coleta-teste última edição:

to_buriti_do_tocantins-last-edition.log

to_cristalandia-last-edition.log

to_pium-last-edition.log

website_date_text = gazette.xpath(
'.//*[contains(text(), "Publicado")]/text()'
).get()
[day, month, year] = findall(r", (.*) de (.*) de (.*)", website_date_text)[0]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Em vez de colocar o espaço em branco , a regex ficaria mais consistente se usasse o token \s

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Não seria mais interessante usar o dateparser para tratar essa data?

website_date_text  = gazette.xpath(
            './/*[contains(text(), "Publicado")]/text()'
        ).get()
website_date_text = publish_date.split(',')[1]
website_date_text = dateparser.parse(
                website_date_text, languages=["pt"]).date()

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Obrigado pela sugestão! Já subi a alteração!

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

Successfully merging this pull request may close these issues.

[Novo spider base]: vale
3 participants