Я пытаюсь почистить сайт для принадлежащего мне устройства. Устройство загружает свои данные на этот сайт, и сам сайт не предлагает API или какой-либо другой программный c способ для меня получить доступ к этим данным.
Успешно выглядит так (на проверку браузера) инструмент):
- GET /Site/Login.
- POST / Site / Login
- 302 к / Site / Index *
- 302 к / Клиент / Аккаунт
- 302 в /Customer/Account/email%40domain.tld
Вот код, который у меня пока есть:
#!/usr/bin/python3
import requests
import json
payload = {
"Email" : email,
"Password" : password,
"Remember" : 'false'
}
headers = {
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language' : 'en-US,en;q=0.5',
'Content-Type': 'application/x-www-form-urlencoded',
'User-Agent' : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:72.0) Gecko/20100101 Firefox/72.0',
}
s = requests.Session()
s.get('https://www.wifi.ecowater.com/Site/Login')
# Add the RequestVerificationToken to the payloay.
RVT = requests.utils.dict_from_cookiejar(s.cookies)
payload['__RequestVerificationToken'] = RVT['__RequestVerificationToken']
r = s.post('https://www.wifi.ecowater.com/Site/Login', params=payload, headers=headers)
print(r.text)
Этот код получает мне страницу с ошибкой, почти как запросы не следуют за всеми перенаправлениями.
Вот команды curl
для 5 указанных выше шагов для инструмента проверки браузера Firefox.
РЕДАКТИРОВАТЬ: Попытка отправки 5 команд скручивания, но stackoverflow помечает это как спам, когда я делаю это, и не позволяет мне писать.