- Mitglied seit
- 4 Okt 2013
- Beiträge
- 28
- Punkte für Reaktionen
- 0
- Punkte
- 0
Hi Leute,
ich wollte mir via Python (da es auf einen Rasberry Pi laufen soll) ein Programm schreiben um damit:
Das mit dem Status funktioniert. Das mit dem an/aus machen will nicht
Vllt seht ihr ja einen Fehler
Ich sitze da schon ein paar Tage dran doch ich komme nicht vorran
:://EDIT habe auch das Probiert, das klappt aber leider nicht
ich wollte mir via Python (da es auf einen Rasberry Pi laufen soll) ein Programm schreiben um damit:
- den Wlan status der FB auszulesen
- das Wlan an/ausmachen
Das mit dem Status funktioniert. Das mit dem an/aus machen will nicht
Vllt seht ihr ja einen Fehler
Code:
import urllib.parse,urllib.error,urllib.request,re,hashlib,urllib,sys,requests
url = 'http://192.168.178.1'
pw = 'meinpw'
SSID = 'meinwlanssid'
def login():
try:
req = urllib.request.Request(url + "/login_sid.lua")
resp = urllib.request.urlopen(req)
respData = resp.read()
challengereg = re.search(r'<Challenge>(.*)</\Challenge>', respData.decode('utf-8'), re.M|re.I).group(1)
challengestr = challengereg+"-"+pw
responsehash = hashlib.md5(challengestr.encode('utf-16le')).hexdigest()
response = challengereg+"-"+responsehash
values = {'response' : response,'page': '','username' : ''}
data = urllib.parse.urlencode(values)
data = data.encode('utf-8')
post = urllib.request.Request(url + "/login_sid.lua",data)
resp = urllib.request.urlopen(post)
respData = resp.read()
sidreg = re.search(r'<SID>(.*)</SID>', respData.decode('utf-8'), re.M|re.I).group(1)
return(sidreg)
except Exception as e:
print(str(e))
return("Login failed")
def status():
get = urllib.request.Request(url + "/wlan/wlan_settings.lua?sid="+login())
fbpageresp = urllib.request.urlopen(get)
fbrespData = fbpageresp.read()
if 'name="active" checked> <label for="uiView_Active">WLAN-Funknetz aktiv' in fbrespData.decode('UTF-8'):
print("W-Lan an!")
elif 'name="active" > <label for="uiView_Active">WLAN-Funknetz aktiv':
print("W-Lan aus!")
else:
print("Fehler")
def wlanoff():
sid=login()
headers = {
'Origin': url,
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36',
'Content-Type': 'application/x-www-form-urlencoded',
'Accept': '*/*',
'Referer': url+'/wlan/wlan_settings.lua?sid='+sid,
'Connection': 'keep-alive',
}
data = 'sid='+sid+'&print=&validate=apply&xhr=1'
requests.post(url+'/wlan/wlan_settings.lua?sid='+sid, headers=headers, data=data)
def wlanon():
sid=login()
headers = {
'Origin': url,
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36',
'Content-Type': 'application/x-www-form-urlencoded',
'Accept': '*/*',
'Referer': url+'/wlan/wlan_settings.lua?sid='+sid,
'Connection': 'keep-alive',
}
data = 'active=on&SSID='+SSID+'&hidden_ssid=on&sid='+sid+'&print=&validate=apply&xhr=1&wlan:settings/ap_enabled=1'
requests.post(url+'/wlan/wlan_settings.lua?sid='+sid, headers=headers, data=data)
Ich sitze da schon ein paar Tage dran doch ich komme nicht vorran
:://EDIT habe auch das Probiert, das klappt aber leider nicht
Code:
def wlanon():
sid=login()
headers = {
'Origin': url,
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36',
'Content-Type': 'application/x-www-form-urlencoded',
'Accept': '*/*',
'Referer': url+'/wlan/wlan_settings.lua?sid='+sid,
'Connection': 'keep-alive',
}
data = 'wlan:settings/ap_enabled=1&sid='+sid
requests.post(url+'/wlan/wlan_settings.lua?sid='+sid, headers=headers, data=data)
Zuletzt bearbeitet: