https://github.com/ghurone/jupiterweb_scraper
Um scraper do jupiterweb
https://github.com/ghurone/jupiterweb_scraper
api jupiterweb python scraper usp
Last synced: 5 months ago
JSON representation
Um scraper do jupiterweb
- Host: GitHub
- URL: https://github.com/ghurone/jupiterweb_scraper
- Owner: ghurone
- License: mit
- Created: 2022-01-26T19:18:09.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2022-11-07T01:43:59.000Z (over 3 years ago)
- Last Synced: 2025-10-13T02:34:56.983Z (8 months ago)
- Topics: api, jupiterweb, python, scraper, usp
- Language: Python
- Homepage:
- Size: 41 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# JúpiterWeb Scraper


Um scraper de disciplinas do [jupiterweb](https://uspdigital.usp.br/jupiterweb/).
## ⚙ Como instalar
Caso você já tenha o pip instalado e configurado é só utilizar o comando de instalação:
```bash
pip install jupiterweb
```
Se o pip não estiver configurado, pode tentar instalar da seguinte maneira:
```bash
python -m pip install jupiterweb
```
Se nenhum dos comandos acima funcionar, pesquise em como con
## 🧙♂️ Guia rápido
No momento, o scraper só possui duas funcionalidades, buscar disciplinas pelo código ou pelo nome. E podem ser importados da seguinte maneira
```python
>>> from jupiterweb import JupiterWeb
>>> client = JupiterWeb()
```
### Disciplna pelo codigo
Se você optar encontrar uma disciplina pelo código
```python
>>> disc = client.disciplina_codigo('4300372')
>>> disc
```
Agora temos um objeto do tipo Discipina! Podemos acessar suas informações da seguinte maneira:
```python
>>> disc.nome
'Eletromagnetismo'
>>> disc['nome']
'Eletromagnetismo'
>>> disc.instituto
'Instituto de Física'
>>> disc['instituto']
'Instituto de Física'
```
Utilize o método ``` .chaves() ``` para ver todos os outros atributos dessa classe
```python
>>> disc.chaves()
('instituto',
'departamento',
'codigo',
'nome',
'nome_ingles',
'creditos_aula',
'creditos_trabalho',
'carga_horaria_total',
'tipo',
'ativacao',
'desativacao',
'objetivos',
'programa_resumido',
'programa',
'avaliacao',
'bibliografia',
'requisitos',
'oferecimento')
```
### Disciplina pelo nome
Se você optar encontrar uma disciplina pelo código
```python
>>> discs = client.disciplina_nome('Eletromagnetismo')
>>> discs.codigos_disciplinas()
('4300372',
'PTC3213',
'SEL0608',
'PTC2313',
'SEL0309',
'LOM3205',
'7600021',
'5910150',
'7600035',
'7600036',
'4300303',
'4302303',
'4300304',
'4302304',
'4300373',
'PTC2310')
```
Para escolher uma disciplina, podemos selecionar o seu indície no objeto.
```python
>>> discs[0]
```
Assim é retornado um objeto do tipo Disciplina, o qual sabemos como utilizar.
Também é possível selecionar pelo código da disciplina:
```python
>>> discs.obter_disciplina('4300372')
```
## ✏ O que falta fazer?
- Documentar a API.
- Função Calendário.
Se sentiu falta de alguma coisa? Tem alguma sugestão? Entre em contato comigo ou utilize das ferramentas do Github.