Es passiert regelmässiger, dass ich unterwegs bin und dort ein Telekom Hotspot vorhanden ist. Aktuell ist dies z.B. im Novotel Karlsruhe der Fall.
Telekom Hotspots haben wie die meisten öffentlichen Hotspots ein sogenantes Captive Portal durch das die Authentifizierung stattfindet.
Ich bin glücklicher Besitzer einer Telekom Hotspot Flatrate und möchte diesen Account gerne verwenden. Allerdings ist die regelmässig wiederkehrende Authentifizierung sehr nervig. Obwohl der Browser Login und Passwort nicht speichert wäre es dennoch schön wenn diese Anmeldung automatisch geschehen könnte.
Gesagt, getan. Hier ein kleines Python Script dass genau diese Aufgabe übernimmt:
#!/usr/bin/python
import BeautifulSoup, re
from mechanize import Browser
url = 'http://www.bawue.de/checkip.php?simple'
user = 'user@t-online.de'
password = 'secret'
br = Browser()
br.open(url)
response = br.response().read()
#if br.title().startswith('HotSpot'):
if br.geturl().startswith('https://hotspot.t-mobile.net/wlan/'):
print 'HotSpot captive portal detected'
br.select_form(name='f_login')
br['username'] = user
br['password'] = password
br.submit()
if br.geturl() == 'https://hotspot.t-mobile.net/wlan/welcome.do':
print 'Login successful'
print 'Status page: https://hotspot.t-mobile.net/wlan/start.do'
br.open(url)
response = br.response().read().strip()
print 'IP Address: %s' % (response)
else:
print 'Login failure'
else:
print 'Not a Telekom HotSpot'