Possiamo quindi iniziare a navigarlo tramite un browser (preferibilmente firefox o chromium/chrome) per farci un idea sul suo funzionamento. E' molto utile in questa fase usare gli strumenti inclusi nel browser come
Il punto di partenza e' quindi creare un nuovo file che chiameremo `scraper.py` con il seguente contenuto:
#! /usr/bin/env python
# importiamo il modulo requests
import requests
# modifichiamo gli header in modo da simulare una richiesta proveniente da un browser web (in questo caso firefox) per evitare possibili ban
headers = requests.utils.default_headers()
headers.update({"User-Agent": "Mozilla/5.0"})
# effettuiamo la richiesta
r = requests.get('http://viaggiatreno.it/vt_pax_internet/mobile', headers=headers)
print(r.text)
# stampiamo il risultato
print(r.text)
salviamo il file ed eseguiamolo:
$ python scraper.py
in modo da vedere il codice html estratto dalla pagina.
Una volta fatto questo torniamo sul sito ed effettuiamo una ricerca per stazione, tenendo aperto il network monitor del browser. Dopodiche', cerceremo di riprodurre la stessa ricerca utilizzando python:
#! /usr/bin/env python
import requests
from bs4 import BeautifulSoup
headers = requests.utils.default_headers()
headers.update({"User-Agent": "Mozilla/5.0"})
data = {
'codiceStazione': 'S01700Milano+Centrale',
'lang': 'IT',
}
r = requests.post('http://viaggiatreno.it/vt_pax_internet/mobile/stazione', headers=headers, data=data)