464 / 341 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
|
|
1 | |
Получить текст страницы, если она запрашивается с помощью POST запроса18.04.2013, 16:58. Показов 5586. Ответов 17
Метки нет (Все метки)
Здравствуйте! GET запрос страницы я делал помощью my $html = get('www.my.url'). А как мне получить текст страницы, если она запрашивается с помощью POST запроса?
И попутный вопрос: а как запрашивать страницу как залогиненный пользователь (с логином и паролем). Заранее благодарю!
0
|
18.04.2013, 16:58 | |
Ответы с готовыми решениями:
17
Получить текст ответа POST запроса при 400 ошибке Проблема с авторизацией на сайте с помощью POST-запроса Как менять IFRAME с помощью POST запроса? Распарсить текст Post-запроса |
63 / 38 / 6
Регистрация: 24.01.2013
Сообщений: 136
|
|
18.04.2013, 19:47 | 2 |
Модуль WWW-Mechanize всё это делает
1
|
464 / 341 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
|
||||||
19.04.2013, 00:20 [ТС] | 4 | |||||
Правильно ли я понял? Нужно сюда вставить мой логин и пароль?
Я смогу таким способом получить, например, код страницы этого фирума как если бы я был залогиненным?
0
|
352 / 222 / 25
Регистрация: 30.09.2012
Сообщений: 548
|
|
21.04.2013, 17:21 | 5 |
1
|
464 / 341 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
|
|
24.04.2013, 21:00 [ТС] | 6 |
0
|
352 / 222 / 25
Регистрация: 30.09.2012
Сообщений: 548
|
|
25.04.2013, 14:49 | 7 |
Авторизация через authorization_basic работает в случае, если сама страница отдаётся по паролю. Движки форумов обычно авторизуются через куки и прочую служебную информацию. Т.е. надо сделать несколько иногда не очевидных вещей, а потом уже получить страницу зарегистрированного пользователя. Только вот зачем это делать - непонятно. Форум и без регистрации отдаёт читабельные страницы.
0
|
464 / 341 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
|
|
25.04.2013, 20:43 [ТС] | 8 |
0
|
352 / 222 / 25
Регистрация: 30.09.2012
Сообщений: 548
|
|
26.04.2013, 11:43 | 9 |
Если только например, тогда Вы заполняете форму входа, отправляете её. Получаете куки. Сохраняете их (или сохраняете частично). Делаете запрос нужной страницы, подставив нужные куки в нужное место. Иногда некоторые дополнительные ухищрения (очень редко). Получаете страницу зарегистрированного пользователя.
1
|
7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
27.04.2013, 23:35 | 10 |
Там есть и POST
1
|
0 / 0 / 0
Регистрация: 09.10.2013
Сообщений: 15
|
||||||
09.10.2013, 23:09 | 11 | |||||
Добавлено через 6 часов 31 минуту http://www.the-game.ru/overview/ Код
POST /overview/ HTTP/1.1 Host: [url]www.the-game.ru[/url] User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Referer: [url]http://www.the-game.ru/[/url] Cookie: __utma=167751035.95729135.1381258042.1381258042.1381295800.2; __utmz=167751035.1381258042.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utmb=167751035.6.10.1381295800; __utmc=167751035; SID=9758451ARHJUBYXGPPVKMDCPQMW Connection: keep-alive Content-Type: application/x-www-form-urlencoded Content-Length: 34 action=login&login=t1est&pwd=t1est
0
|
352 / 222 / 25
Регистрация: 30.09.2012
Сообщений: 548
|
|
10.10.2013, 15:50 | 12 |
Возможно, формируете не те куки или не в полном объёме, возможно Вам возвращают не текст, а gzip, да и какой интерес играть в игры, если хитрить?
0
|
0 / 0 / 0
Регистрация: 09.10.2013
Сообщений: 15
|
|
10.10.2013, 17:16 | 13 |
В игре допускается администрацией такие способы, на определенных аккаунтах, там даже есть реализация перл-скриптов для автоматизации игры. Кроме того есть сторонние клиенты, которые работают подобным образом и администрация об их знает, так что с этической стороны проблемы нет. Для меня это лишь способ изучать перл, (логин\пароль не прячу). Насколько мне известно, там куки вообще не должны читаться, раздел с куками я содрал откуда-то, где было написано, что подобный код "схавает" любой любознательный сервер. Если кто научит правильно их обрабатывать - скажу огромное спасибо. Переменная получаемая содержит текст страницы, где ввод имени пароля. Документацию по Post запросу прочитал вроде. Смысл затеи - научиться читать любые сайты без капчи. Есть еще одно место, где мне хотелось бы применить подобную технологию, но там все реализовано посложней, посему хотелось бы начать с этого.
Добавлено через 5 минут У меня есть скрипт, который решает эту проблему, написанный профессиональным программистом, но там для меня темный лес. В случае чего могу выложить, но там скрипт большой (много делает всего), и по блоку, делающему заход на акк возникнет много вопросов.
0
|
352 / 222 / 25
Регистрация: 30.09.2012
Сообщений: 548
|
|
12.10.2013, 19:47 | 14 |
По тем кукам, что Вы привели, у меня сложилось впечатление:
- куки хранят в себе как минимум 4 временные метки, причём разные; - одна из них возможно временная метка команды (но я могу ошибаться, это надо тестить); - одно из полей - возможный идентификатор пользовательской системы или пользователя. Естественно, что временные метки меняются со временем (если я не ошибся, но уж больно похожи), а идентификатор системы/пользователя может как меняться при каждом логине, так и быть фиксированным под конкретный логин (это зависит от того, как решил разработчик сайта). Плюс, после входа в систему куки и их назначения могут меняться, иногда радикально. По поводу сайта без капчи - если капча сделана по уму, то она никак не связана с теми куками, которые отдаёт сайт, ну или связана случайным образом и очень ограниченное время, а потом идёт переприсваивание случайного числа. Так что в большинстве случаев не вариант. p.s. играть интереснее без читерства
0
|
0 / 0 / 0
Регистрация: 09.10.2013
Сообщений: 15
|
|
12.10.2013, 20:44 | 15 |
Т.е. считаете, что во всем виноваты куки, а остальной код похож на правду? На PHP в аналогичной программе помоему вообще нет кук, но там подключение через сокет. И еще вопрос, на странице сайта:
Доступ к этой странице требует авторизации, введите свой логин и пароль</p><br><form method="post" name="login" action="/overview//"><input type="hidden" name="action" value="login"><table border="0" cellpadding="0" cellspacing="15" align="center" width="70%"><tr><td>Имя</td><td align="right"><input name="login" type="text" tabindex="0" onselect="NeedFocus=0" onchange="NeedFocus=0"></td></tr><tr><td>Пароль</td><td align="right"><input type="password" name="pwd" maxlength="25" onselect="NeedFocus=0" onchange="NeedFocus=0"></td></tr><tr><td colspan="2" Т.е. надо вводить input name="login", и input type="password" name="pwd", а браузер посылает запрос другой перемнной, это нормально? И что надо посылать. Насчет читерства, это платные аккаунты и там администрация разрешает проводить подобные методы подключения.
0
|
352 / 222 / 25
Регистрация: 30.09.2012
Сообщений: 548
|
|
12.10.2013, 21:24 | 16 |
Судя по приведенному Вами фрагменту кода страницы и логе из сообщения #11, переменные как раз соответствуют.
0
|
0 / 0 / 0
Регистрация: 09.10.2013
Сообщений: 15
|
|
14.10.2013, 15:51 | 17 |
Cookie: __utma=167751035.95729135.1381258042.1381258042.1381295800.2; __utmz=167751035.1381258042.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utmb=167751035.6.10.1381295800; __utmc=167751035; SID=9758451ARHJUBYXGPPVKMDCPQMW
Cookie: __utma=167751035.95729135.1381258042.1381747073.1381749998.9; __utmz=167751035.1381258042.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utmc=167751035; SID=9767904COECXUMCAAQPMLFKJWHM; __utmb=167751035.1.10.1381749998 Вот куки 2-х успешных сессий. Дальше идут гет запросы. Так что получить средствами Перл эту страничку нереально и надо переходить на PHP? А если через Сокеты? То же не прокатит?
0
|
0 / 0 / 0
Регистрация: 09.10.2013
Сообщений: 15
|
||||||||||||||||
16.10.2013, 10:20 | 18 | |||||||||||||||
Почистил куки и отправил запрос, все прошло, значит по идее куки на эту конкретную страницу не нужны, по ходу разобрался с куками.
http://www.the-game.ru/overview/ POST /overview/ HTTP/1.1 Host: www.the-game.ru User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Referer: http://www.the-game.ru/ Connection: keep-alive Content-Type: application/x-www-form-urlencoded Content-Length: 34 action=login&login=t1est&pwd=t1est HTTP/1.1 200 OK Server: nginx/1.1.19 Date: Tue, 15 Oct 2013 17:56:31 GMT Content-Type: text/html; charset=utf-8 Set-Cookie: SID=9770003KHGKDOPAUMTAOGUDXSIW; path=/ Cache-Control: private, max-age=3600 Expires: Tue, 15 Oct 2013 18:56:31 GMT Transfer-Encoding: chunked X-OSSProxy: OSSProxy 1.3.336.320 (Build 336.320 Win32 en-us)(Aug 16 2013 17:38:43) Connection: keep-alive Добавлено через 6 секунд Почистил куки и отправил запрос, все прошло, значит по идее куки на эту конкретную страницу не нужны, по ходу разобрался с куками. http://www.the-game.ru/overview/ POST /overview/ HTTP/1.1 Host: www.the-game.ru User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Firefox/24.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Referer: http://www.the-game.ru/ Connection: keep-alive Content-Type: application/x-www-form-urlencoded Content-Length: 34 action=login&login=t1est&pwd=t1est HTTP/1.1 200 OK Server: nginx/1.1.19 Date: Tue, 15 Oct 2013 17:56:31 GMT Content-Type: text/html; charset=utf-8 Set-Cookie: SID=9770003KHGKDOPAUMTAOGUDXSIW; path=/ Cache-Control: private, max-age=3600 Expires: Tue, 15 Oct 2013 18:56:31 GMT Transfer-Encoding: chunked X-OSSProxy: OSSProxy 1.3.336.320 (Build 336.320 Win32 en-us)(Aug 16 2013 17:38:43) Connection: keep-alive Добавлено через 11 минут
Добавлено через 11 часов 58 минут
Вопрос как посчитать 'Content-Length', и может ли от ее не проходить авторизация? Вот что за ответ я получаю от сервера: Добавлено через 6 секунд
Вопрос как посчитать 'Content-Length', и может ли от ее не проходить авторизация? Вот что за ответ я получаю от сервера:
0
|
16.10.2013, 10:20 | |
16.10.2013, 10:20 | |
Помогаю со студенческими работами здесь
18
Открытие аккаунта с помощью HTTPS POST-запроса (Delphi XE3) Повторение POST запроса при обновлении страницы Отправка post запроса без перезагрузки страницы Отправка POST запроса без показа страницы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |