Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.02.2016, 23:40   #1
combats69
Новичок
Джуниор
 
Регистрация: 23.01.2016
Сообщений: 2
По умолчанию idhttp и webbrowser

Доброго времени суток.
Хочу написать полуавтоматического бота.
Делаю авторизацию через Indy - работает. Далее хочу передать данные в WebBrowser - работает (актуальные данные отображаются). Передала данные с помощью этой функции:
Код:
function TForm1.LoadHTMLContent(aWb: TWebBrowser; const aStr: String): Variant;
begin
//Загрузка HTML документа из строковой переменной.
//Функция возвращает ссылку на интерфейс объекта документа.
  Result := aWb.OleObject.document;
  //Если объект документа оказался несозданным, то создаём его.
  if TVarData(Result).VDispatch = nil then
  begin
    //Создаём новый документ с пустым содержанием.
    aWb.Navigate('about:blank');
    Result := aWb.OleObject.document;
  end;
  //Загружаем в документ нужный HTML код из строковых данных.
  Result.open('text/html', 'replace');
  Result.write(aStr);
  Result.close;
end;


но не работает переход по ссылкам в WebBrowser'е, т.к. они такие: /sms.php, /map.php и т.д. Предполагаю, что мне как-то нужно передать referer. Но не знаю, как это сделать..

PS: сильно не пинайте, я совсем новичок
combats69 вне форума Ответить с цитированием
Старый 27.02.2016, 00:12   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

referer не причем, и так работать не будет.
Надо грузить страницу сайта самим веббраузером, а не просто HTML в него засовывать. Можно попробовать передать ему cookie (вряд ли просто), тогда авторизация скорее всего останется.

Ссылки-то можно исправить если к ним добавить адрес сайта, но при переходе все равно не будет авторизации без куков.

В общем проще в браузере и авторизоваться.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 27.02.2016, 00:24   #3
vlad1389
Форумчанин
 
Регистрация: 02.02.2016
Сообщений: 290
По умолчанию

А нужен ли боту WebBrowser?
vlad1389 вне форума Ответить с цитированием
Старый 27.02.2016, 03:03   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

и не будет работать, WB тупо не знает где он сейчас, чтоб полный путь сформировать.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 27.02.2016, 23:09   #5
combats69
Новичок
Джуниор
 
Регистрация: 23.01.2016
Сообщений: 2
По умолчанию

я надеялась, что куки передадутся так:
Код:
for c:= 0 to idhttp.CookieManager.CookieCollection.Count - 1 do
    begin      
       WebBrowser1.OleObject.Document.Cookie:=idhttp.CookieManager.CookieCollection.Cookies[c].ClientCookie;
       memo2.Lines.Add(idhttp.CookieManager.CookieCollection.Cookies[c].ClientCookie);  //для проверки
    end;
и мемо показывает правильные куки там..
но вы хотите сказать, что все равно куки так не передать?


webBrowser нужен для того, что бот будет полуавтоматический... нужно менять лишь некоторые настройки и в некоторых местах нужно автоматическое управление.. вот и ничего более в голову не пришло как передавать управление от инди к браузеру и обратно...

Последний раз редактировалось combats69; 27.02.2016 в 23:12.
combats69 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как связать между собой IdHTTP и WebBrowser? Antiseptik Работа с сетью в Delphi 7 29.08.2015 20:53
WebBrowser + IdHttp написние интернет бота ZekaUa Работа с сетью в Delphi 8 04.03.2011 18:23
Вопрос: Авторизация IdHTTP и WebBrowser mental Работа с сетью в Delphi 3 14.02.2011 01:20
WebBrowser и IdHTTP связать КУКИ? alexpro2004 Работа с сетью в Delphi 3 20.11.2009 10:15
idhttp и webbrowser Jakethefish Работа с сетью в Delphi 18 18.11.2009 19:48