Metadata-Version: 2.1
Name: selenium-form-killer
Version: 0.1.6
Summary: 
License: MIT
Author: Rodrigoneal
Author-email: rodrigho2006@gmail.com
Requires-Python: >=3.9,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: bs4 (>=0.0.2,<0.0.3)
Requires-Dist: capmonstercloudclient (>=1.3.4,<2.0.0)
Requires-Dist: chardet (>=5.2.0,<6.0.0)
Requires-Dist: httpx (>=0.27.0,<0.28.0)
Requires-Dist: loguru (>=0.7.2,<0.8.0)
Requires-Dist: pytest-asyncio (>=0.23.5,<0.24.0)
Requires-Dist: python-dotenv (>=1.0.1,<2.0.0)
Requires-Dist: requests (>=2.31.0,<3.0.0)
Requires-Dist: typing-extensions (>=4.9.0,<5.0.0)
Description-Content-Type: text/markdown

# Selenium Killer

## Introdução

O Selenium Killer é uma biblioteca que permite usar o httpx para realizar requisições e capturar os dados de um site. Assim você pode usar a biblioteca para automatizar tarefas como: 

- Capturar os dados de um site
- Realizar requisições POST
- Realizar requisições GET
- Enviar formulários

Ele surge como uma necessidade de automação, pois abrir navegador é um processo caro e demorado.

O Selenium Killer não tem renderização por javascript. Logo para tarefas que exigem interação por javascript, você deve usar o Selenium ou alguma biblioteca parecida.

## Como Usar


O coração do Selenium Killer é a classe `SeleniumKiller` que contém as funções `get`, `post` e `forms`.

## Exemplos
Importar e instanciar
```python
from selenium_killer.killer import SeleniumKiller
killer = SeleniumKiller()
```
A selenium killer é baseada no padrão factory pattern. Sempre retornando uma nova instancia do mesmo objeto.

Exemplo de uso
```python
killer = SeleniumKiller()
killer.get('https://google.com')
killer.forms
killer.post('https://google.com')
```

## Uso

Vamos fazer um requisição para o site https://google.com e capturar os dados de um formulário:

```python
killer = SeleniumKiller()
await killer.get('https://google.com')
forms = killer.forms
forms[0].submit()
forms[0].fields
```
