从网站上读取数据

时间:2018-05-19 10:29:12

标签: delphi c++builder indy indy10 idhttp

enter image description here

我正在寻求帮助,从代码级别访问网站http://dctgdansk.pl/pl/strefa-klienta/sprawdz-kontener-online/

有一个"集装箱号码"应该输入容器编号的窗口,并且在按下给定容器上的箭头数据之后可以使用。

不幸的是,页面的来源没有可以通过 IdHTTP1-> Get(地址)功能加载到我的程序中的信息。

我没有从网站阅读数据的经验,但在一个案例中,我在页面地址中使用了所有打开另一页面所需的数据,在这种情况下,网站地址不变。

1 个答案:

答案 0 :(得分:0)

使用标准HTML网络表单提交容器编号:

<form action="https://dctgdansk.pl/pl/strefa-klienta/sprawdz-kontener-online/" method="post">
  <input type="text" id="cntrnumber" name="cntrnumber" value="Container Number:" class="default"/>
  <input type="submit" value="szukaj"/>
</form>

要使用Indy的TIdHTTP组件提交此类网络表单,请使用以Post()作为输入的TStrings方法的重载版本,例如:

var
  Params: TStringList;
  Response: string;
begin
  Params := TStringList.Create;
  try
    Params.Add('cntrnumber=' + ContNum);
    Response := IdHTTP1.Post('https://dctgdansk.pl/pl/strefa-klienta/sprawdz-kontener-online/', Params);
  finally
    Params.Free;
  end;
  // use Response as needed ...
end;