Nov-30-2021, 04:29 PM
Thanks, but I'm still struggling with my code and don't have other choice but to use 're.search()'.
Here's an updated code which, when the variables are searched individually, it works but not when searched as a group.
Obviously, I'm not using the wrong identifiers.
Here's an updated code which, when the variables are searched individually, it works but not when searched as a group.
Obviously, I'm not using the wrong identifiers.
import re ssid = "" password = "" token = "" ip = "" gw = "" sbnet = "" dns = "" x = 'POST /configure HTTP/1.1\r\nHost: 192.168.4.1\r\nOrigin: http://192.168.4.1\r\nContent-Type: ' \ 'application/x-www-form-urlencoded\r\nAccept-Encoding: gzip, deflate\r\nConnection: ' \ 'keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nAccept: text/html,application/xhtml+xml,application/xml;q=0.9,' \ '*/*;q=0.8\r\nUser-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 15_1_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, ' \ 'like Gecko) Version/15.1 Mobile/15E148 Safari/604.1\r\nReferer: http://192.168.4.1/\r\nContent-Length: ' \ '111\r\nAccept-Language: en-GB,en;q=0.9\r\n\r\nssid=my_ssid&password=my_pass&token=abctttttttttt123456789 ' \ '&ip=192.168.1.222&gw=192.168.1.1&sbnet=255.255.255.0&dns=8.8.8.8 ' match = re.search("ssid=([^&]*)", x) print(match) match = re.search("password=([^&]*)", x) print(match) match = re.search("token=([^&]*)", x) print(match) match = re.search("ip=([^&]*)", x) print(match) match = re.search("gw=([^&]*)", x) print(match) match = re.search("sbnet=([^&]*)", x) print(match) match = re.search("dns=([^&]*)", x) print(match) match = re.search("ssid=([^&]*)&password=(.*)&token=([^&].*)&ip=([^&].*)&sbnet=([^&].*)&gw=([^&].*)&dns=([^&].*)", x) print(match) # try: # ssid = match.group(1).decode("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@").replace("+", " ") # password = match.group(2).decode("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") # token = match.group(3).decode("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") # ip = match.group(4).decode("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") # sbnet = match.group(5).decode("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") # gw = match.group(6).decode("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") # dns = match.group(7).decode("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") # except Exception: # ssid = match.group(1).replace("%3F", "?").replace("%21", "!").replace("%40", "@").replace("+", " ") # password = match.group(2).replace("%3F", "?").replace("%21", "!").replace("%40", "@") # token = match.group(3).replace("%3F", "?").replace("%21", "!").replace("%40", "@") # ip = match.group(4).replace("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") # sbnet = match.group(5).replace("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") # gw = match.group(6).replace("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") # dns = match.group(7).replace("utf-8").replace("%3F", "?").replace("%21", "!").replace("%40", "@") print(ssid, password, token, ip, gw, sbnet, dns)