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

Вниз

Скачивание html страницы.   Найти похожие ветки 

 
7inars   (2008-03-26 04:29) [0]

Здравствуйте, помогите найти, где накосячил )
procedure GetHTMLfile;
var
 headers, body, request :string;
 s                      :string;

begin
request := "GET "+somepage+".ru HTTP/1.1" + CRLF +
          "User-Agent: Opera 9.26 (Windows NT 5.1; U; en)"  + CRLF +
          "Host: nic.ru" + CRLF +
          "Connection: close" + CRLF;
with Sockets.TTcpClient.Create(nil) do begin
 try
   RemoteHost := somedomain;
   RemotePort := "80";
  Connect();
if Connected then
begin
  SendLn(request);
  headers := ReceiveLn(CRLF + CRLF);
  body := ReceiveLn(CRLF + CRLF);
  Disconnect();

  Form1.Memo1.Text := body;
end;
if Pos(refer, Form1.Memo1.Text) > 1 then
begin
 Form1.Memo1.Lines.SaveToFile("db\"+inttostr(i)+".ru");
end;

Form1.Memo1.Clear;

 finally
  Free;
 end;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Application.ProcessMessages;
GetHTMLfile;
end;


Собственно что нужно: при нажатии на кнопку, идёт запрос на "somedomain", скачивается "somepage" страничка.
Далее проверка, если в скаченной странице, есть строка "refer", стриница сохраняется в фаил.
Собственно всё) Спасибо.


 
TMemo   (2008-03-26 09:39) [1]

Неправильный запрос, должно быть так:

request := "GET "+"/"+" HTTP/1.1" + CRLF +
         "User-Agent: Opera 9.26 (Windows NT 5.1; U; en)"  + CRLF +
         "Host: nic.ru" + CRLF +
         "Connection: close" + CRLF+ CRLF;

//-----------------------------------

try
  RemoteHost := "nic.ru";



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
2-1206038360
Nicky000
2008-03-20 21:39
2008.04.20
SQL


2-1206527869
Gavrila
2008-03-26 13:37
2008.04.20
PopupMenu - определить какой Item вызвал событие OnClik


15-1204652410
Dmitry S
2008-03-04 20:40
2008.04.20
AV непонятный


2-1206586708
Stepper
2008-03-27 05:58
2008.04.20
Вывод данных в RichEdit с предварительным удалением пробела?


15-1204872820
ANB
2008-03-07 09:53
2008.04.20
Отправить почту через MS Exchange