initial commit
This commit is contained in:
1 parent
af59a90c31
commit
ef498e4a72
114 files changed
+11047
No files matched your search
@@ -0,0 +1,66 @@
|
||||
# HPE 1810 switch scraper — cheat sheet
|
||||
|
||||
## Innan du kör något
|
||||
|
||||
```bash
|
||||
source ~/code/venvs/hpe/bin/activate
|
||||
cd ~/code/experiments/hpe
|
||||
```
|
||||
|
||||
Alla kommandon nedan behöver `NO_PROXY` satt (annars går trafiken via er proxy och 502:ar):
|
||||
|
||||
```bash
|
||||
export NO_PROXY=192.168.2.10
|
||||
```
|
||||
|
||||
(sätt den en gång per terminal-session, eller lägg i `~/.zshrc`)
|
||||
|
||||
**Stäng switchens webb-UI i webbläsaren** innan du kör skript — den tillåter bara en inloggad session åt gången.
|
||||
|
||||
## Köra en extraktor
|
||||
|
||||
```bash
|
||||
python -m extractors.port_summary
|
||||
python -m extractors.system_description
|
||||
python -m extractors.network_setup
|
||||
python -m extractors.buffered_log
|
||||
python -m extractors.lldp_statistics
|
||||
python -m extractors.log_configuration
|
||||
python -m extractors.backup_manager
|
||||
```
|
||||
|
||||
Var och en loggar in (eller återanvänder cachad session), hämtar, skriver ut, och flaggar sig som "Implemented" i `TODO.md`.
|
||||
|
||||
## Kombinera flera i eget skript
|
||||
|
||||
```python
|
||||
import switch_client
|
||||
from extractors.port_summary import get_port_summary
|
||||
|
||||
session = switch_client.get_session()
|
||||
ports = get_port_summary(session)
|
||||
```
|
||||
|
||||
Logga in **en gång**, återanvänd `session` för alla anrop.
|
||||
|
||||
## Menyupptäckt / TODO.md
|
||||
|
||||
```bash
|
||||
python discover.py # skanna om menyn, uppdatera TODO.md
|
||||
python discover.py --dump-html ./out # + spara rå HTML för felsökning
|
||||
```
|
||||
|
||||
Fyll i `y` i "Want it?"-kolumnen i `TODO.md` för sidor du vill ha en extraktor för.
|
||||
|
||||
## Felsökning
|
||||
|
||||
| Symptom | Orsak | Åtgärd |
|
||||
|---|---|---|
|
||||
| `RuntimeError: Login failed...` | Webb-UI:t öppet i en flik, eller nyss inloggad från annan process | Stäng fliken / vänta ~5 min (session-timeout) |
|
||||
| `502 Bad Gateway` | Proxy fångar trafiken | `export NO_PROXY=192.168.2.10` |
|
||||
| Vill tvinga ny inloggning | Cachad session krånglar | `switch_client.get_session(force_login=True)` |
|
||||
| Rensa cachad session helt | — | `rm .session_cookie` |
|
||||
|
||||
## Lägga till en ny extraktor
|
||||
|
||||
Alla sidor delar samma HTML-mönster — kolla `extractors/xe_page.py`. Kopiera en befintlig extraktor (t.ex. `system_description.py`), byt `PATH` och tabellnamnet i `tables["..."]`.
|
||||
Reference in new issue
Block a user