0 / 0 / 0
Регистрация: 02.07.2013
Сообщений: 3
1

Как записать в куки нужные переменные?

02.07.2013, 12:02. Показов 1945. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
Хочу разобраться с передачей запросов с помощью питона. Решил написать бота для простой игры - http://barbars.ru но столкнулся с проблемой. При авторизации пост запросом отправляются данные и в ответ в куки записуют логин, айди и сесию. Попытался это написать на питоне. Запрос в браузере на первом, а консольный вывод программы вот:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
loginForm_hf_0=&login=MyTestUser&password=qwerty123&%3Asubmit=%D0%92%D0%BE%D0%B9%D1%82%D0%B8
#######################
{'Origin': 'http://barbars.ru', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'User-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/536.30.1 (KHTML, like Gecko) Version/6.0.5 Safari/536.30.1', 'Connection': 'Keep-Alive', 'Referer': 'http://barbars.ru/login', 'Content-type': 'application/x-www-form-urlencoded'}
#######################
Server: nginx/1.2.1
Date: Mon, 01 Jul 2013 23:20:58 GMT
Content-Type: text/html;charset=UTF-8
Content-Length: 3216
Connection: close
Set-Cookie: JSESSIONID=6E8E40AAB5408C3F14B866F24EBB749C; Path=/
Pragma: no-cache
Cache-Control: no-cache, max-age=0, must-revalidate
Content-Language: en-US
#######################
<cookielib.CookieJar[<Cookie JSESSIONID=6E8E40AAB5408C3F14B866F24EBB749C for barbars.ru/>]>
Проблема в том, что в куки не записывает нужные переменные. Можете сказать, что я не так сделал, или что я не сделал?
Сам код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#!/usr/bin/env python 
# -*- coding: utf-8 -*-
import httplib, cookielib, urllib, urllib2
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
headers = {
    'Origin': 'http://barbars.ru',
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/536.30.1 (KHTML, like Gecko) Version/6.0.5 Safari/536.30.1',
    'Content-Type': 'application/x-www-form-urlencoded', 
    'Connection': 'Keep-Alive', 
    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
    'Referer': 'http://barbars.ru/login'
}
data = {
    'login':'MyTestUser',
    'password':'qwerty123',
    'loginForm_hf_0':'',
    ':submit':'Войти'
}
#POST /login/wicket:interface/:13:loginForm::IFormSubmitListener:: HTTP/1.1
data = urllib.urlencode(data) 
req = urllib2.Request('http://barbars.ru/login', data, headers) 
response = opener.open(req)
print data
print "#######################"
print req.headers
print "#######################"
print response.headers
print "#######################"
print cj
П.С. Указаны разные браузеры потому, что в сафари мне не очень нравится их вывод.
П.П.С. Логин и пароль игрока указаны реальные)
Миниатюры
Как записать в куки нужные переменные?  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.07.2013, 12:02
Ответы с готовыми решениями:

Как записать нужные данные из БД в переменную?
Уважаемые формучане, прошу Вашей помощи. Мне нужно в Excel, в разные ячейки записать данные из БД...

Интерфейсы и инкапсуляция данных, как наследоваться так, чтобы можно было сохранить нужные переменные приватными
если я верно понял принцип наследования в шарпе, то: к примеру, будут у меня дочерние классы...

Как в кольцевой буфер записать нужные мне данные
Как в кольцевой буфер записать нужные мне данные? Код записи такой в буфер такой ;запись в буфер...

Как перебрать и записать в массив нужные ячейки таблицы?
Всем доброго вечера! Прошу подсказать в следующем вопросе. Имеется таблица! &lt;!DOCTYPE html&gt;...

Как записать данные с куки в файл?
Всем привет! Есть код, который записывает ссылку в куки. Мне надо, чтобы когда выполнялся условие,...

3
0 / 0 / 0
Регистрация: 02.07.2013
Сообщений: 3
02.07.2013, 21:28  [ТС] 2
Никто не может помочь?
0
99 / 84 / 5
Регистрация: 06.05.2013
Сообщений: 242
02.07.2013, 22:41 3
Строку 22 попробуй вот так изменить, а
Python
1
req = urllib2.Request('http://barbars.ru/login/wicket:interface/:0:loginForm::IFormSubmitListener::;jsessionid=4E665AA5378128CFCAD4557234BBB714', data, headers)
в headers попробуй вот это записать
Python
1
headers = {"User-Agent":"Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.2.6) Gecko/20100628 Ubuntu/10.04 (lucid) Firefox/3.6.6", "Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}
1
0 / 0 / 0
Регистрация: 02.07.2013
Сообщений: 3
03.07.2013, 03:41  [ТС] 4
Цитата Сообщение от dhxdzjbr Посмотреть сообщение
Строку 22 попробуй вот так изменить, а
Python
1
req = urllib2.Request('http://barbars.ru/login/wicket:interface/:0:loginForm::IFormSubmitListener::;jsessionid=4E665AA5378128CFCAD4557234BBB714', data, headers)
в headers попробуй вот это записать
Python
1
headers = {"User-Agent":"Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.2.6) Gecko/20100628 Ubuntu/10.04 (lucid) Firefox/3.6.6", "Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}
Спасибо, заработало!
0
03.07.2013, 03:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.07.2013, 03:41
Помогаю со студенческими работами здесь

Как записать куки с разных сайтов
нужно при заходе на страницу записать в браузер пользователя куки с несколько сайтов?как это можно...

Как записать данные с куки в файл?
Всем привет! Скажу сразу, что я в программировании новичок и хотелось бы ответы с примерами. На...

Как правильно записать-передать нужные строки матрицы в массив
нужно чтоб в итоге решалась программа на реализацию выражения с перегрузкой операторов V=M1&lt;&lt;M2,...

Как вручную записать куки для CURLOPT_COOKIEFILE
Как записывать куки в формате Netscape я разобрался, но вот в документации написано, что А как...

Как изменить атрибут и записать в куки (отключить адаптивность сайта)
Доброго времени суток, уважаемые форумчане. Возник такой вопрос... В head имеется: &lt;meta...

Как записать значения checkbox из массива _GET и потом создать куки
Как записать значения checkbox из массива _GET и потом создать куки, со значением.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru