Авторизация с помощью модуля requests на сайте bitcoinru.org
Пытаюсь авторизоваться на сайте, но не получается и меня кидает обратно логиниться. Помогите разобраться в чём моя ошибка. Делаю первые шаги в веб-скрапинге и парсинге. Цель авторизоваться и считать количество BTC.
import lxml.html
import requests
from bs4 import BeautifulSoup
login = 'mylogin'
password = 'mypass'
url = 'https://bitcoinru.org/'
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 YaBrowser/20.3.1.197 Yowser/2.5 Safari/537.36',
'Accept': '*/*',
'Accept-Language':'ru,en;q=0.9',
'Accept-Encoding':'gzip, deflate, br',
'Connection':'keep-alive',
'Content-Length': '271',
'Content-Type': 'multipart/form-data; boundary=----WebKitFormBoundaryxEHBUogoIAis8UHA',
'Host': 'bitcoinru.org',
'Origin': 'https://bitcoinru.org',
'Referer': 'https://bitcoinru.org/',
'Sec-Fetch-Dest': 'empty',
'Sec-Fetch-Mode': 'cors',
'Sec-Fetch-Site': 'same-origin'
}
session = requests.session()
data = session.get(url, headers=headers)
page = lxml.html.fromstring(data.content)
form = page.forms[0]
form.fields['openEmail'] = login
form.fields['openPass'] = password
print(page.forms[0].fields['openEmail'])
response = session.post(form.action, data=form.form_values())
#response = session.post(url, data=form.form_values())
print('onLoginDone' in response.text)
soap = BeautifulSoup(response.text, "lxml")
print(soap.find("li", attrs={"id": "walletBalance"}))
print(response.text)
Ответы (1 шт):
Автор решения: Evgeniy
→ Ссылка
Делаем запрос сюда:
import requests
data = {
'uid': '1',
'key': '12345678901234567890123456789012',
'setmodule': 'addresses',
'request': 'bal',
'address': 'Номер вашего кошелька',
}
with requests.Session() as s:
r = s.get('https://coinb.in/api/', params=data)
print(r.text)
Получаем такой ответ:
<request>
<result>1</result>
<balance>0</balance>
<response>balance+returned</response>
</request>
Где <balance>0</balance> и есть наш баланс
Источник: F12 -> сеть
Т.е. сам сайт нужен только для создания кошелька, а данные он получает путём запроса на другой домен с номером кошелька в параметрах.
И вообще он выглядит довольно подозрительно, я бы не стал пользоваться. Но, решать вам