Este projeto valida páginas web verificando a existência de tags <h1>
, imagens OG (Open Graph) e opcionalmente captura screenshots das páginas.
- Node.js (versão 12 ou superior)
- npm ou yarn (para gerenciar pacotes)
- Puppeteer (instalado via dependências do projeto)
- Clone o repositório:
git clone https://github.com/seu-usuario/web-page-validator.git
- Navegue até o diretório do projeto:
cd web-page-validator
- Instale as dependências:
yarn install
ou
npm install
Para executar o script de validação, utilize o seguinte comando:
[yarn|npm run] dev [FLAGS]
--validate-og-images
: Valida as imagens OG (Open Graph) nas páginas.--validate-heading-tags
: Verifica se as páginas possuem a tag<h1>
,<h2>
,<h3>
, etc e registra o conteúdo de texto.--take-screenshots
: Captura screenshots das páginas durante a validação.
[yarn|npm run] dev --validate-og-images --take-screenshots
[yarn|npm run] dev --validate-heading-tags
[yarn|npm run] dev --validate-og-images --validate-heading-tags --take-screenshots
src/index.ts
: Arquivo principal que orquestra o fluxo de validação das páginas.src/utils.ts
: Funções utilitárias para manipulação de diretórios e logs.src/pageUtils.ts
: Funções para interagir com as páginas, como aceitar cookies e rolar até o final da página.src/ogImageValidator.ts
: Função para validar imagens OG nas páginas.
Os resultados da execução serão armazenados em um diretório logs
criado na raiz do projeto. O diretório será nomeado com um timestamp da execução.
logs/<timestamp>/screenshots
: Armazena as screenshots capturadas (se a flag--take-screenshots
estiver ativa).logs/<timestamp>/og_images
: Armazena os logs da validação de imagens OG.logs/<timestamp>/tags
: Armazena os logs da verificação de tags<h1>
.logs/<timestamp>/access
: Armazena os logs de acessibilidade das páginas.
Se desejar contribuir com o projeto, sinta-se à vontade para abrir issues e enviar pull requests.
Este projeto está licenciado sob a MIT License.
Este README.md fornece instruções detalhadas sobre como configurar, executar e entender o projeto, incluindo as flags disponíveis para a execução do script. Se precisar de mais alguma alteração ou tiver alguma dúvida, estou à disposição!