![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Скачивание html страницы. [D7, XP]
7inars © (2008-03-26 04:29:00)Здравствуйте, помогите найти, где накосячил )
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:00) [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';