Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > Парсинг HTML страницы с авторизацией


Автор: kromol 10.4.2012, 11:49
Здраствуйте!
Мне нужно получить некоторые данные с сайта. Но проблема в том, что часть информации доступна только авторизованным пользователям.
Я использую следующий код для парсинга страницы:
Код

function DownloadPage(Suorce, FileName: String): Boolean;
begin
  try
    Result := URLDownloadToFile(nil, PChar(Suorce), PChar(FileName), 0, nil) = 0;
  except
    Result := False;
  end;
end;
function Parser: Boolean;
var Doc: IHTMLDocument2;
      v, Attribute: OleVariant;
      AllTags, TagA: IHTMLElementCollection;
      AElement: IHTMLElement;
      URLList: TStringList;
begin
     URLList := TSTringList.Create;
     if DownloadPage(URL, FileName) then
         URLList.LoadFromFile(FileName);
      Doc := CoHTMLDocument.Create as IHTMLDocument2;
  if (Doc = nil) then
    begin
      MessageBoxA(0, PAnsiChar('Error while creating IHTML2 document'), PAnsiChar('Error'), MB_OK);
      Result := False;
      Exit;
    end;

  v := VarArrayCreate([0, 0], varVariant);
  v[0] := FURLList.Text;
  FURLList.Clear;
  Doc.write(PSafeArray(TVarData(v).VArray));

  AllTags := Doc.all;
  TagA := AllTags.tags('a') as IHTMLElementCollection;
.........
end;

Подскажите пожалуйста возможно ли залогиниться таким способом?
Спасибо!

Автор: Frees 6.5.2012, 19:29
Код

    Doc.all.item('login').value := 'login';
    Doc.all.item('passwd').value := 'pass';
    Doc.forms.item('MainLogin').submit;


название формы и полей ввода смотри в коде страницы.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)