Вверх ↑
Этот топик читают: Гость
Ответов: 253
Рейтинг: 0
#1: 2018-10-04 13:56:07 ЛС | профиль | цитата
Суть проблемы такова. Есть сайт, нужно зайти под логином и паролем и получить код сторонницы.

Вот пример кода с помощью которого можно войти под логином и паролем на форум Hiasm.

Add(MainForm,2953706,189,140)
{
Width=256
Height=114
Caption="HiAsm Forum"
}
Add(Edit,4084053,238,140)
{
Left=65
Top=10
Width=170
Text=""
}
Add(Edit,9888975,287,140)
{
Left=65
Top=35
Width=170
Text=""
}
Add(Button,5351235,189,210)
{
Left=180
Top=60
Caption="OK"
link(onClick,6328958:doBuild,[])
}
Add(Label,8832491,238,91)
{
Left=10
Top=10
Width=30
Height=17
Caption="Login"
}
Add(Label,194775,287,91)
{
Left=10
Top=35
Height=17
Caption="Password"
}
Add(URLBuilder,6328958,238,210)
{
Args=#5:login|4:pass|
link(onBuild,1426084:doBuild,[])
link(login,4084053:Text,[])
link(pass,9888975:Text,[(251,191)(293,191)])
}
Add(HTTP_PostBuilder,1426084,287,210)
{
URL="/login.php"
Host="forum.hiasm.com"
link(onBuild,8204047:doEvent1,[])
}
Add(Hub,8204047,336,210)
{
link(onEvent1,15429759:doOpen,[])
link(onEvent2,15429759:doSend,[(360,223)(360,230)])
}
Add(Message,6341031,427,210)
{
Caption="Answer"
}
Add(TCP_Client,15429759,371,210)
{
Port=80
IP="93.95.97.201"
link(onRead,6341031:doMessage,[])
}


Но проблема на сайте который мне нужен, а именно http://onrooms.ru/ . При входе считывается не только login и pass там еще нужен _csrf-frontend (Он типа генерирует рондомный ключ сессии) Можно ли как-то перехватить ключ раньше генерации события post
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 4612
Рейтинг: 746
#2: 2018-10-04 14:12:45 ЛС | профиль | цитата
Используй HTTPClient + CookieManager. Делаешь первый простой GET-запрос, получаешь куки и в тексте страницы все необходимые данные. Потом формируешь и выполняешь POST-запрос для авторизации.
карма: 26

0
Ответов: 253
Рейтинг: 0
#3: 2018-10-04 14:56:54 ЛС | профиль | цитата
Не получается установить, почему то пишет нету вкладки Internet
карма: 0

0
Ответов: 4612
Рейтинг: 746
#4: 2018-10-04 15:02:25 ЛС | профиль | цитата
Как устанавливал? В Readme.txt описано как установить. Если перетаскивал *.ini в окно, то там, где предлагало выбрать вкладку, там надо было ещё и пакет выбрать - "Delphi".
карма: 26

0
Ответов: 253
Рейтинг: 0
#5: 2018-10-04 15:03:54 ЛС | профиль | цитата
Именно так и сделал.

--- Добавлено в 2018-10-04 15:05:54

Перетаскиваю, выскакивает ошибка. Мол Return nil as query result select id from groups where name ='Internet'
потом Много восклицательных знаков.

Редактировалось 1 раз(а), последний 2018-10-04 15:05:54
карма: 0

0
Ответов: 4612
Рейтинг: 746
#6: 2018-10-04 15:08:26 ЛС | профиль | цитата
Что-то у тебя с elements.db не то. Перетащи *.ini в окно, выбери пакет "Delphi" и посмотри в списке вкладок есть ли вкладка "Интернет".
карма: 26

0
Ответов: 253
Рейтинг: 0
#7: 2018-10-04 15:09:29 ЛС | профиль | цитата
Там вообще пусто

--- Добавлено в 2018-10-04 15:13:36

Если запускаю Hiasm с правами Админа то при перетаскивание файла нечего не происходит

Редактировалось 1 раз(а), последний 2018-10-04 15:13:36
карма: 0

0
Ответов: 4612
Рейтинг: 746
#8: 2018-10-04 15:17:43 ЛС | профиль | цитата
Ну, а когда просто запущеный HiAsm - там какие вкладки есть?
карма: 26

0
Ответов: 253
Рейтинг: 0
#9: 2018-10-04 15:21:52 ЛС | профиль | цитата

--- Добавлено в 2018-10-04 15:24:28


Редактировалось 3 раз(а), последний 2018-10-04 15:24:48
карма: 0

0
Ответов: 4612
Рейтинг: 746
#10: 2018-10-04 15:31:38 ЛС | профиль | цитата
У тебя в пути к папке HiAsm есть русские буквы - этого не должно быть, иначе ни одного компонента не сможешь установить. Нажми правой кнопкой на компоненте в палитре и выбери "Переместить вверх"/"Переместить вниз" - должна выскочить ошибка.
карма: 26

0
Ответов: 253
Рейтинг: 0
#11: 2018-10-04 15:35:55 ЛС | профиль | цитата
Тааак) Да, ошибка есть. Сейчас скину в другое место.

--- Добавлено в 2018-10-04 15:38:03

А вы случайно не знаете, может ли получиться с этими компонентами подключиться к гугл контактом, и проверить есть ли тот или иной контакт?

Редактировалось 1 раз(а), последний 2018-10-04 15:38:03
карма: 0

0
Ответов: 4612
Рейтинг: 746
#12: 2018-10-04 15:48:01 ЛС | профиль | цитата
Если есть описание или понимание API Google - не вижу проблем: HTTPS есть, куки, POST запросы, пользовательские заголовки, пользовательские форматы запросов - есть. Пробуй.
карма: 26

0
Ответов: 253
Рейтинг: 0
#13: 2018-10-04 17:04:08 ЛС | профиль | цитата
Все равно не понимаю как правильно отправить запрос.
Походу очень сложная система и просто так не войти.

Add(MainForm,2953706,21,105)
{
Width=579
Height=527
Caption="HTTPClient - Cookie"
Position=1
}
Add(Button,12479344,140,133)
{
Left=10
Top=30
Width=140
Height=25
Caption="Выполнить"
link(onClick,5102370:doEvent1,[])
}
Add(Memo,2568247,637,112)
{
Left=10
Top=100
Width=550
Height=250
ScrollBars=3
}
Add(Message,363691,385,161)
{
Caption="Ошибка запроса"
Icon=1
}
Add(DoData,7347341,350,112)
{
link(onEventData,9377522:doEvent1,[])
link(Data,2427935:getVar,[])
}
Add(Hub,9377522,420,112)
{
InCount=2
OutCount=1
link(onEvent1,148817:doCharset,[])
}
Add(CookieManager,16633777,245,336)
{
Name="Cook"
Point(doDelete)
Point(onChange)
link(onChange,3907832:doWork,[])
}
Add(Hub,5102370,196,133)
{
InCount=2
link(onEvent1,8936422:doWork,[(220,139)(220,125)])
link(onEvent2,6023390:doLoadString,[])
}
Add(LineBreakEx,8936422,231,119)
{
Caption="clear"
}
Add(LineBreakEx,2111794,462,119)
{
Caption="clear"
Type=1
link(OnEvent,2568247:doClear,[])
}
Add(StringTableMT,6990886,343,378)
{
Left=10
Top=375
Width=550
Height=115
Hint="Нажмите Delete для удаления выбранной строки"
Columns=#11:Протокол=30|7:Хост=90|6:Имя=80|12:Значение=100|14:Хранить до=200|7:Путь=80|
IconsCheck=[]
MiscIcons=[]
Icons=[]
Point(Index)
Point(onKeyDown)
link(onKeyDown,9540469:doCompare,[])
}
Add(ArrayEnum,8557589,252,427)
{
link(onItem,6990886:doAdd,[(303,433)(303,384)])
link(Array,16633777:List,[])
}
Add(Hub,14417105,196,420)
{
link(onEvent1,6990886:doClear,[(225,426)(225,391)])
link(onEvent2,8557589:doEnum,[])
}
Add(InfoTip,5114647,126,305)
{
Info=#26:Отображение доступных куки|
Width=414
Height=228
}
Add(LineBreak,9467896,196,364)
{
Caption="del"
Color=8421376
link(Out,16633777:doDelete,[])
Primary=[10680356,301,91]
}
Add(DoData,16059216,357,455)
{
link(onEventData,14177706:doEvent1,[])
link(Data,6990886:Index,[])
}
Add(LineBreakEx,8436280,140,420)
{
Caption="enum"
Type=1
link(OnEvent,14417105:doEvent1,[])
}
Add(LineBreakEx,7511669,434,462)
{
Caption="enum"
}
Add(Hub,14177706,406,455)
{
link(onEvent1,10680356:In,[])
}
Add(If_else,9540469,399,385)
{
Op2=Integer(46)
link(onTrue,16178583:doMessage,[])
}
Add(Message,16178583,455,385)
{
Message="Удалить этот куки?"
Caption="Удаление"
Type=2
Icon=2
Point(onYES)
link(onYES,16059216:doData,[(499,398)(499,437)(345,437)(345,461)])
}
Add(LineBreakEx,3907832,301,343)
{
Caption="enum"
}
Add(Label,4104088,21,203)
{
Left=10
Top=355
Width=42
Height=17
Caption="Cookies"
}
Add(LineBreakEx,2427935,350,84)
{
Caption="head"
Type=2
}
Add(LineBreakEx,15402714,308,189)
{
Caption="head"
Type=3
link(_Data,6023390:RawHeaders,[])
}
Add(HTTPClient,6023390,287,140)
{
URL="http://onrooms.ru/"
CookieManager="Cook"
Point(RawHeaders)
Point(PostData)
link(onHeadersAvail,7347341:doData,[(336,146)(336,118)])
link(onFinish,9377522:doEvent2,[(405,153)(405,125)])
link(onError,363691:doMessage,[])
link(PostData,6132841:Text,[(307,96)(62,96)])
}
Add(Label,15666455,21,154)
{
Left=10
Top=10
Width=38
Height=17
Caption="Адрес:"
}
Add(Edit,4084053,623,364)
{
Left=295
Top=60
Width=170
Text="login"
}
Add(Edit,9888975,672,364)
{
Left=470
Top=60
Width=70
Text="pass"
}
Add(URLBuilder,6328958,623,434)
{
Args=#14:_csrf-frontend|17:login-form[login]|20:login-form[password]|0:|
link(onBuild,1426084:doBuild,[])
link(_csrf-frontend,14935774:Text,[(629,415)(580,415)])
link(login-form[login],4084053:Text,[(636,415)(629,415)])
link(login-form[password],9888975:Text,[(643,415)(678,415)])
}
Add(Edit,14935774,574,364)
{
Left=155
Top=60
Width=135
Text=""
}
Add(Button,7048982,546,462)
{
Left=15
Top=60
Width=130
Caption="Войти"
link(onClick,6328958:doBuild,[(600,468)(600,440)])
}
Add(Charset,148817,567,112)
{
Type=7
link(onCharset,2568247:doAdd,[])
}
Add(HTTP_PostBuilder,1426084,672,434)
{
URL="/site/login"
Host="onrooms.ru"
link(onBuild,6132841:doText,[(716,440)(716,234)(44,234)(44,27)])
}
Add(Edit,6132841,56,21)
{
Left=155
Top=30
Width=385
Text=""
link(onChange,5102370:doEvent2,[(142,27)(142,146)])
}

карма: 0

0
Ответов: 4612
Рейтинг: 746
#14: 2018-10-04 17:17:17 ЛС | профиль | цитата
Во-первых, метод запроса какой? Во-вторых, смотрел описание свойства PostData, в каком виде туда данные подавать? Есть же ж примеры.

Редактировалось 1 раз(а), последний 2018-10-04 17:25:16
карма: 26

0
Ответов: 253
Рейтинг: 0
#15: 2018-10-04 17:35:23 ЛС | профиль | цитата
Метод POST
Вот как Выглядит запрос/


карма: 0

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)