Перейти к содержанию

Помогите написать интернет-робота


Рекомендуемые сообщения

Помогите написать программку на делфи, которая может автоматически зайти на определённый сайт,

например форум улановка, и открыть тему, ну или перейти по какойнить ссылке...

Ссылка на комментарий

Я - робот!

Добавлено спустя 4 минуты 52 секунды:

У меня получилось :yes:

Не знаю то или не то тебе нужно. Вообщем вот:

uses

MSHTML_TLB;

procedure TForm1.Button1Click(Sender: TObject);

procedure Delay(ms : longint);

var

TheTime : LongInt;

begin

TheTime := GetTickCount + ms;

while GetTickCount < TheTime do

Application.ProcessMessages;

end;

var

ShellWindow: IShellWindows;

WB: IWebbrowser2;

spDisp: IDispatch;

IDoc1: IHTMLDocument2;

Document: Variant;

k, m: Integer;

ovElements: OleVariant;

i: Integer;

begin

WB:=CoInternetExplorer.Create;

WB.Visible:=True;

WB.Navigate('http://ulanovka.ru/forum/', EmptyParam, EmptyParam, EmptyParam, EmptyParam);

Delay(2000);

WB:=nil;

ShellWindow := CoShellWindows.Create;

for k := 0 to ShellWindow.Count do

begin

spDisp := ShellWindow.Item(k);

if spDisp = nil then Continue;

spDisp.QueryInterface(iWebBrowser2, WB);

if WB <> nil then

begin

WB.Document.QueryInterface(IHTMLDocument2, iDoc1);

if iDoc1 <> nil then

begin

WB := ShellWindow.Item(k) as IWebbrowser2;

begin //==========выполняем вход==============

Document := WB.Document;

ovElements := Document.forms.Item(1).elements;

for i := 0 to ovElements.Length - 1 do

begin

try

if (CompareText(ovElements.item(i).tagName, 'INPUT') = 0) and

(CompareText(ovElements.item(i).type, 'text') = 0) then

begin

ovElements.item(i).Value := Edit1.Text;//логин

end;

except

end;

try

if (CompareText(ovElements.item(i).tagName, 'INPUT') = 0) and

(CompareText(ovElements.item(i).type, 'Password') = 0) then

begin

ovElements.item(i).Value := Edit2.Text;//пароль

end;

except

end;

try

if (CompareText(ovElements.item(i).tagName, 'INPUT') = 0) and

(CompareText(ovElements.item(i).type, 'SUBMIT') = 0) and

(ovElements.item(i).Value = 'Вход') then

begin

ovElements.item(i).Click;

end;

except

end

end;

end;

end; //==========================================

Delay(1000);

WB.Navigate('http://ulanovka.ru/forum/viewtopic.php?t=42459', EmptyParam, EmptyParam, EmptyParam, EmptyParam);

Delay(1000);

Document := WB.Document;

for m := 0 to Document.forms.Length - 1 do

begin

ovElements := Document.forms.Item(m).elements;

for i := 0 to ovElements.Length - 1 do

begin

try

if (CompareText(ovElements.item(i).type, 'Textarea') = 0) then

begin

ovElements.item(i).Value := Memo1.Text; // Текст сообщения

end;

except

end;

try

if(CompareText(ovElements.item(i).type, 'SUBMIT') = 0) and

(ovElements.item(i).Value = 'Предв. просмотр') then

begin

ovElements.item(i).Click;

end;

except

end;

end;

end;

end;

end;

end;

Ссылка на комментарий
  • 1 месяц спустя...

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...