Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.30;
Скачать: CL | DM;

Вниз

Вопрос - как достать информацию из сети?   Найти похожие ветки 

 
Aleks_Grey   (2004-11-11 06:13) [0]

Приветствую, Мастера!
Есть некоторая программа, которой позарез требуется курс нескольких валют. Как сделать так, чтобы по определенному событию программа лезла в интернет и доставала их оттуда? Заранее благодарен.


 
SlyFox ©   (2004-11-12 14:50) [1]

Когда то давным давно делал вот так. Качается страница с курсами c cbr.ru, парсится и выводится все это в файл. Код под себя уж сам адаптируй.

procedure TForm1.XPSpeedButton2Click(Sender: TObject);
var
 Fin, Fout: TextFile;
 Dat,Str,OutF,Mess: String;
 I: Integer;
 sr: TSearchRec;
begin
Mess:="";
OutF:="curs.htm";
NMHTTP1.InputFileMode:=True;
NMHTTP1.Body:=OutF;
NMHTTP1.Get("http://www.cbr.ru/currency_base/D_print.asp?date_req="+date1);
begin
        if FindFirst(OutF,faReadOnly,sr)=0 then
        begin
   AssignFile(Fin, OutF);
   Reset(Fin);
   AssignFile(Fout, "\curs.txt";
   Rewrite(Fout);
   Str:="";
   While Pos("<tr bgcolor="#ffffff">",Str)=0 do
   begin
     ReadLn(Fin,Str);
     I:=Pos("установил с ",Str);
     if I>0 then Dat:=Copy(Str,I+12,10);
   end;
   While not EOF(Fin) do
   begin
     ReadLn(Fin,Str);
     I:=Pos(">",Str);
     if (Copy(Str,I+1,3)="810") or (Copy(Str,I+1,3)="978") then
     begin
     WriteLn(Fout,CnvAnsiToOem("ФОНД      :")+Copy(Str,I+1,3));
     WriteLn(Fout,CnvAnsiToOem("ДАТА      :")+Copy(Date1,1,2)+"."+Copy(Date1,4,2)+"."+Copy(Date1,7,4));
     ReadLn(Fin,Str);
     ReadLn(Fin,Str);
     I:=Pos(">",Str);
     Str:=Copy(Str,I+1,100);
     I:=Pos("<",Str);
     WriteLn(Fout,CnvAnsiToOem("КОЛИЧЕСТВО:")+Copy(Str,1,I-1));
     ReadLn(Fin,Str); ReadLn(Fin,Str); ReadLn(Fin,Str); ReadLn(Fin,Str);
     I:=Pos(">",Str);
     Str:=Copy(Str,I+1,100);
     I:=Pos("<",Str);
     Str:=Copy(Str,1,I-1);
     I:=Pos(",",Str);
     If I>0 then Str[I]:=".";
     WriteLn(Fout,CnvAnsiToOem("СТОИМОСТЬ :")+Str);
     ReadLn(Fin,Str); ReadLn(Fin,Str);
     IF Pos("<tr bgcolor="#ffffff">",Str)=0 then break;
     end;
   end;
   CloseFile(Fin);
   CloseFile(Fout);
   ShowMessage(Mess);
        end
        else
        begin
   ShowMessage("Файл испорчен! Повторите загрузку еще раз.");
   Exit;
        end;
end
end;



Страницы: 1 вся ветка

Текущий архив: 2005.01.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.03 c
1-1106210826
XmeD
2005-01-20 11:47
2005.01.30
Определение железа локального компьютера


1-1105870166
DimDim
2005-01-16 13:09
2005.01.30
Копировать каталог


1-1106118648
Serge_SG
2005-01-19 10:10
2005.01.30
Где найти тесты по SQL?


14-1105281755
AdmeraL
2005-01-09 17:42
2005.01.30
бинарные данные?


14-1105628391
Cosinus
2005-01-13 17:59
2005.01.30
Блин, замучался ужО...