Задать вопрос

Как автоматически использовать сессию при авторизации через скрипт?

Помогите пожалуйста разобраться с авторизацией через скрипт. Проблема в том, что не получается автоматически вставлять в get-запрос invbf_session_id.

import pprint
import requests
import re
import shelve

import bs4
     

def scanning_posts():
    print('------------------------enter begin--------------------')

    url = 'http://forum.saransk.ru/'
    html = requests.get(url)

    pprint.pprint(html.headers)
    rawCookie = html.headers['Set-Cookie']
    cookie = re.search(r"invbf_session_id=(.*?);", rawCookie).group(1)
    pprint.pprint(cookie)	# cookie != zzzzzzzzzzzzzzzzzzzzzz

    html = requests.get(url)
    soup = bs4.BeautifulSoup(html.text)
    loginForm = soup.find('form', {'id': 'login'})
    hiddenAuthKey = soup.find('input', {'name': 'auth_key'})['value']

    authData = {    
                'ips_username': 'xxxxxx',
                'ips_password': 'yyyyyy',
                'auth_key': hiddenAuthKey,
                'rememberMe': 1,
                'referer': 	'http://forum.saransk.ru/'
    }

    header = {
                'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36',
                'Referer': 'http://forum.saransk.ru/forum/'
    }

    #pprint.pprint(authData)
    print('\tlogin: ', authData['ips_username'])

    cookie = dict(invbf_session_id='zzzzzzzzzzzzzzzzzzzzzz')



    req = requests.get(url, params=authData, cookies=cookie, headers=header)
    soup = bs4.BeautifulSoup(req.text)

    signLinkNotLogged = soup.find('a', {'id': 'sign_in'})
    if signLinkNotLogged:
        print('------------------------enter failed--------------------')
    else:
        print('------------------------enter successful--------------------')
		
		
scanning_posts()

После запуска скрипт выводит на экран не то значение, что видно в FF firebug. Соответственно авторизоваться не получается.

Если значение invbf_session_id скопировать из FF firebug и вставить в скрипт, то авторизация успешная
  • Вопрос задан
  • 2658 просмотров
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы