Не могу понять как авторизоваться через requests

greenman2020

Новичок
Пользователь
Ноя 11, 2020
3
0
1
Привет всем.
У меня возникла необходимость получить данные со страниц сайта iptv.live
Нужная информация доступна только авторизованным пользователям.

Но вот незадача. Что бы я не делал не получается авторизоваться на этом сайте.
Перепробовал кучу вариантов отправки post но все безрезультатно.

Прошу помощи у вас, о мои опытные наставники.
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 663
474
83
покажите как пытались?
так то статей куча как пройти авторизацию на сайте, например, тык
 
Последнее редактирование:

greenman2020

Новичок
Пользователь
Ноя 11, 2020
3
0
1
покажите как пытались?
так то статей куча как пройти авторизацию на сайте, например, тык
Пару примеров

import requests

session = requests.Session()
session.post('https://iptv.live/ru/login/sign', {
'vb_login_username': 'log',
'vb_login_password': 'pas',
})
r = session.get('https://iptv.live').text
print(r)


session = requests.Session()
data = {'vb_login_username': 'log', 'vb_login_password': 'pas'}
url = "https://iptv.live/ru/login/sign"
r = session.post(url, data=data)

session.cookies

r = session.get('https://iptv.live').text
print(r)
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 663
474
83
попробуйте как описано в статье, регистрироваться на iptv.live никто не будет чтобы попробовать
 

greenman2020

Новичок
Пользователь
Ноя 11, 2020
3
0
1
Это один из последних криков души, но и он не увенчался успехом

import requests
url = 'https://iptv.live/ru/login/sign'

s = requests.Session()
r = s.get('https://iptv.live/ru/login/sign')
#print (r.text)
header = {
'Accept': 'application/json, text/javascript, */*; q=0.01',
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language': 'ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3',
'Connection':'keep-alive',
'Content-Length':'1149',
'Content-Type':'multipart/form-data; boundary=---------------------------46725308720617112424069590368',
'Cookie':'__cfduid=d06a61ba02a7ac4005fd44597a131f5231605095140; IDstack=%2C290869%2C; bbsessionhash=4c2c975e61914dd4610f835fdf3bd466; bblastvisit=1605098313; bblastactivity=0; bblanguageredirect=1; bbtimezoneoffset=5',
'DNT': '1',
'Host':'iptv.live',
'Origin':'https://iptv.live',
'Referer':'https://iptv.live/ru/login/sign',
'TE':'Trailers',
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:82.0) Gecko/20100101 Firefox/82.0',
'X-Requested-With':'XMLHttpRequest'
}
data = {
'vb_login_username': 'e4143bc8100a@mail.ru',
'vb_login_password': '1q2w3ee4r',
's': '',
'retoken': '',
'retoken2':'',
'securitytoken': 'guest',
'do': 'sing'
}
r = s.post(url,data=data,headers=header)
s.cookies
print (r.status_code)
r = s.get('https://iptv.live/ru/playlist/1096618')
print(r.status_code)
print(r.text)
 

MaximusMinimus

Новичок
Пользователь
Ноя 12, 2020
6
1
3
Я пока еще в обучении до requests не дошел)
Мне эта задача интересна для практики.

Могу предложить вариант с selenium:
Python:
from selenium.webdriver import Chrome

# Вспомогательные функции для заполнения формы
def desc_input(selector, value, driver):
    name = driver.find_element_by_css_selector(selector)
    name.click()
    name.send_keys(value)

def click_button(selector, driver):
    button = driver.find_element_by_css_selector(selector)
    button.click()


# Создаем объект для управления драйвером
# Нужно скачать драйвер хрома и положить в папку assets,
# или другую, но тогда и путь поменять в строке ниже
chrome = Chrome(executable_path="assets/chromedriver.exe")

# Переходим на страницу авторизации
chrome.get('https://iptv.live/ru/login/sign')

# Заполняем и отправляем форму
desc_input('#form_login > ul > li:nth-child(1) > div > div > input', 'email', chrome)
desc_input('#form_login > ul > li:nth-child(2) > div > div > input', 'password', chrome)
click_button('#form_login > div > button', chrome)
 

Форум IT Специалистов