Вы должны соскрести значения __VIEWSTATE
, __VIEWSTATEGENERATOR
, __EVENTVALIDATION
, ctl00$MainContent$ctlLogin$BtnSubmit
, ctl00$MainContent$ctlLogin$Redir
с домашней страницы и добавить их в свои данные формы.
import requests
import bs4 as bs
# Create session.
session = requests.Session()
headers = {
'Host': 'playsports365.com',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.64 Safari/537.31',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language': 'en-US,en;q=0.5',
'Accept-Encoding': 'gzip, deflate',
'Content-Type': 'application/x-www-form-urlencoded',
'Origin': 'http://playsports365.com',
'Referer': 'http://playsports365.com/default.aspx',
}
# Add headers in session.
session.headers.update(headers)
# Login page request.
login_page_url = 'http://playsports365.com/default.aspx'
response = session.get(login_page_url)
soup = bs.BeautifulSoup(response.text, 'lxml')
# Extract payload data from login page.
event_target = soup.find('input', {'id': '__EVENTTARGET'}).get('value')
event_argument = soup.find('input', {'id': '__EVENTARGUMENT'}).get('value')
view_state = soup.find('input', {'id': '__VIEWSTATE'}).get('value')
view_state_generator = soup.find('input', {'id': '__VIEWSTATEGENERATOR'}).get('value')
event_validation = soup.find('input', {'id': '__EVENTVALIDATION'}).get('value')
btn_submit = soup.find('input', {'name': 'ctl00$MainContent$ctlLogin$BtnSubmit'}).get('value')
re_dir = soup.find('input', {'name': 'ctl00$MainContent$ctlLogin$Redir'}).get('value')
# Add data in payload.
form_data = {
'ctl00$MainContent$ctlLogin$_UserName': 'YOUR USERNAME',
'ctl00$MainContent$ctlLogin$_Password': 'YOUR PASSWORD',
'__EVENTTARGET': event_target,
'__EVENTARGUMENT': event_argument,
'__VIEWSTATE': view_state,
'__VIEWSTATEGENERATOR': view_state_generator,
'__EVENTVALIDATION': event_validation,
'ctl00$MainContent$ctlLogin$BtnSubmit': btn_submit,
'ctl00$MainContent$ctlLogin$Redir': re_dir,
}
# Request for login.
login_url = 'http://playsports365.com/default.aspx'
login_response = session.post(login_url, data=form_data)
print(login_response.status_code, response.text)