! - Откройте больше возможностей ? Зарегистрируйтесь!

  1. Набор в Команду форума

    • Набор в Команду форума
    • Наш форум обьявил о наборе на разные должности нашего форума
    • Для вступления в команду ознакомьтесь с условиями.
    • Ознакомиться с условиями: [Кликабельно]
    Скрыть объявление

 [Delphi] Учимся парсить | Token

Тема в разделе "Delphi программирование", создана пользователем VelFrik, 22 окт 2019.

  1. VelFrik

    VelFrik Публикатор
    Команда форума

    Регистрация:
    7 июн 2019
    Сообщения:
    49
    Симпатии:
    13
    Розыгрышей:
    0
    Привет дорогой пользователь
    Сейчас я тебя научу — парсить информацию с сайтов)
    [Нам нужна библиотека — Synapse]
    *******************************
    Что нам нужно?
    1.Delphi, немного знаний и всё)
    2.Сайт с которого будем парсить)
    ************************
    Добавим в uses HTTPSend,ssl_openssl;
    Добавляем кнопку + sMemo на форму)
    Вставляем функцию парса:

    её нужно вставить ниже этой строчки)

    implementation

    {$R *.dfm}
    Код:
    *********************
    function Pars(T_, ForS, _T: string): string;
    var
    a, b: integer;
    begin
    Result := '';
    if (T_ = '') or (ForS = '') or (_T = '') then Exit;
    a := Pos(T_, ForS);
    if a = 0 then Exit
    else a := a + Length(T_);
    
    ForS := Copy(ForS, a, Length(ForS) - a + 1);
    b := Pos(_T, ForS);
    if b > 0 then Result := Copy(ForS, 1, b - 1);
    end;
    3.Кликаем на sButton [Button] 2 раза
    Должно открыться окошко.
    Код:
    procedure sButton1Click(Sender: TObject);
    var
    HTTP: THTTPSend;
    HTML : TStringList;
    begin
    HTTP:= THTTPSend.Create;
    HTML := TStringList.Create;
    //Например взял | WarFrame :)
    if HTTP.HTTPMethod('GET','https://warframe.com/ru') then
    begin
    HTML.LoadFromStream(HTTP.Document);
    info :=Pars('"theme_token":"',Utf8ToAnsi(html.Text),'","'); // 'Откуда' и 'До куда'
    sMemo1.Lines.Add(info);
    end;
    
    //Ещё нужно добавить в global var : info : string; вот тут
    end;
    var
    Form5: TForm5;
    info : string;
     

Поделиться этой страницей