
29.04.2010, 21:18
|
|
Участник форума
Регистрация: 30.03.2007
Сообщений: 121
С нами:
10060964
Репутация:
52
|
|
Сообщение от buchlord
Программа работает но с отправкой на сервер данных запутался ,не могу сообразить !!! Помогите пожалуйста юнному программисту !!!!! 
PHP код:
....
procedure TForm1.Button1Click(Sender: TObject);
var FS:TFileStream;
begin
IdHTTP1.Request.UserAgent := 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; YPC 3.0.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)';
S:=IdHTTP1.Get('http://www.sms.tele2.ru/');
public_key:=Copy(S, Pos('public_key', S)+35, 32);
FS:=TFileStream.Create('captcha.png',FMCreate);
IdHTTP1.Get('http://www.sms.tele2.ru/get_rni.php?public_key='+public_key, FS);
FS.Free;
Image1.Picture.LoadFromFile('captcha.png');
end;
procedure TForm1.Button2Click(Sender: TObject);
var
Data:TStringList;
begin
Data:=TStringList.Create;
Data.Add('do=send');
Data.Add('smstext='+text.Text);
Data.Add('phone_cod='+Kod.text);
Data.Add('number='+nomer.Text);
Data.Add('sms_text='+text.Text);
Data.Add('private_key='+public_key); // Это капча
Data.Add('public_key='+public_key); // А это Хеш наверное её )
S:=IdHTTP1.Post('http://www.sms.tele2.ru/', Data);
if Pos('green', S)<>0 then
Label1.Caption:='ДА :)'
else
Label1.Caption:='Нет;)'
Data.Free; // список освобождать кто будет?
end;
end.
PHP код:
Data.Add('private_key='+public_key); // Это капча
Data.Add('public_key='+public_key); // А это Хеш наверное её )
У тебя капча и ключ одно и тоже.
Последний раз редактировалось JnK; 29.04.2010 в 21:23..
|
|
|

29.04.2010, 21:04
|
|
Участник форума
Регистрация: 23.07.2009
Сообщений: 261
С нами:
8843557
Репутация:
539
|
|
0_о
buchlord, зачем ты столько раз, юзер агент прописываешь?
Сверяй что отправляет браузер и твоя программа, и соображай.
|
|
|

29.04.2010, 22:40
|
|
Познавший АНТИЧАТ
Регистрация: 09.11.2009
Сообщений: 1,077
С нами:
8686406
Репутация:
265
|
|
Дельфи
Я зашёл на ВК
idhttp1.Get('http://vk.com/');
Как можно спарсить нужный мне текст?
|
|
|

29.04.2010, 23:04
|
|
Участник форума
Регистрация: 30.03.2007
Сообщений: 121
С нами:
10060964
Репутация:
52
|
|
Сообщение от stepashka_
Дельфи
Я зашёл на ВК
Как можно спарсить нужный мне текст?
PHP код:
var
str:string;
begin
str:=idhttp1.Get('http://vk.com/');
// copy,delete,pos
end;
или как практикуют через StringList
PHP код:
var
str:Tstringlist;
tmp:string;
i:integer;
begin
str:=Tstringlist.Create();
str.Text:=idhttp1.Get('http://vk.com/');
for i:=0 to str.count-1 do
begin
tmp:=str.Strings[i] ;
delete(tmp,1,pos('img',tmp));
// copy,delete,pos
end;
str.Free;
end;
Последний раз редактировалось JnK; 29.04.2010 в 23:08..
|
|
|

29.04.2010, 23:08
|
|
Познавший АНТИЧАТ
Регистрация: 09.11.2009
Сообщений: 1,077
С нами:
8686406
Репутация:
265
|
|
JnK я в дельфи начинающий, можно чуть подробнее?
|
|
|

29.04.2010, 23:14
|
|
Новичок
Регистрация: 10.09.2009
Сообщений: 15
С нами:
8772914
Репутация:
1
|
|
Как достать пароли с mail.ru агента подскижите плз..
|
|
|

29.04.2010, 23:16
|
|
Участник форума
Регистрация: 30.03.2007
Сообщений: 121
С нами:
10060964
Репутация:
52
|
|
Сообщение от stepashka_
JnK я в дельфи начинающий, можно чуть подробнее?
Где, что не понятно?
PHP код:
var
tmp,str:string; // переменная str = строка
begin
str:=idhttp1.Get('http://vk.com/');
{ считываем страницу и сохраняем её в строке (str) }
tmp:=copy(str,pos('<title>',str)+7,pos('</title>',str));
{в строку Tmp копируется текст между <title> и </title> }
// copy - скопировать часть строки
// !! delete - удалить часть строки. Работает с VAR переменными.
// pos - найти строку (символ) в подстроке
end;
PHP код:
var
str:Tstringlist; // Список (аналог визуальный ListBox)
tmp:string; // Строка (временная переменная)
i:integer; // число (счетчик)
begin
str:=Tstringlist.Create(); // создаем список (выделяем память)
str.Text:=idhttp1.Get('http://vk.com/'); // копируем в список текст страницы
for i:=0 to str.count-1 do // цикл проходит по всему списку
begin
tmp:=str.Strings[i] ; // присваиваем строку из списка во временную, т.к. нельзя работать на прямую коммандой Delete
delete(tmp,1,pos('img',tmp)); // удаляем с 1 симвода, до слова Img (если нет такого слова) то ничего не делает.
// copy,delete,pos - читай выше.
end;
str.Free; // освобождаем список (память)
end;
|
|
|

29.04.2010, 23:33
|
|
Новичок
Регистрация: 07.01.2009
Сообщений: 12
С нами:
9127584
Репутация:
0
|
|
PHP код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, PngImageList, ImgList, IdHTTP, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, StdCtrls, ExtCtrls, IdCookieManager;
type
TForm1 = class(TForm)
Image1: TImage;
kap: TEdit;
Button1: TButton;
IdTCPClient1: TIdTCPClient;
IdHTTP1: TIdHTTP;
PngImageList1: TPngImageList;
PngImageCollection1: TPngImageCollection;
Button2: TButton;
Kod: TComboBox;
nomer: TEdit;
text: TEdit;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
var public_key, S:string;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var FS:TFileStream;
begin
IdHTTP1.Request.UserAgent := 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; YPC 3.0.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)';
S:=IdHTTP1.Get('http://www.sms.tele2.ru/');
public_key:=Copy(S, Pos('public_key', S)+35, 32);
FS:=TFileStream.Create('captcha.png',FMCreate);
IdHTTP1.Get('http://www.sms.tele2.ru/get_rni.php?public_key='+public_key, FS);
FS.Free;
Image1.Picture.LoadFromFile('captcha.png');
end;
procedure TForm1.Button2Click(Sender: TObject);
var Data:TStringList;
begin
Data:=TStringList.Create;
Data.Add('do=send');
Data.Add('smstext='+text.Text);
Data.Add('phone_cod='+Kod.text);
Data.Add('number='+nomer.Text);
Data.Add('sms_text='+text.Text);
Data.Add('private_key='+kap.Text);
Data.Add('public_key='+public_key);
Data.Add('submit.x=0');
Data.Add('submit.y=0');
S:=IdHTTP1.Post('http://www.sms.tele2.ru/', Data);
Data.Free;
if Pos('<p><b><span style="color: green">Спасибо, Ваше сообщение принято!</span></b></p>', S)<>0 then
Label1.Caption:='ДА :)'
else
Label1.Caption:='Нет;)'
end;
end.
Народ я уже все волосы на голове выдрал помогите не отправляет смс !!!!!!!!
Может всё дело в :
PHP код:
Data.Add('submit.x=0');
Data.Add('submit.y=0');
я незнаю что место 0 ставить??????
|
|
|

30.04.2010, 00:07
|
|
Участник форума
Регистрация: 30.03.2007
Сообщений: 121
С нами:
10060964
Репутация:
52
|
|
Сообщение от buchlord
....
я незнаю что место 0 ставить??????
Снифер в руки брал?
PHP код:
Data.Add('submit.x=0');
Data.Add('submit.y=0');
Т.к. Кнопка на сайте в виде картинки, то идет авто ориентир х и у, это на случай, если кнопку хотят использовать как карту. (1 кнопка - много путей), в твоем случаи, это роли не играет, но если так хочешь поставь 15, 10
PHP код:
Data.Add('submit.x=15');
Data.Add('submit.y=10');
|
|
|

29.04.2010, 23:57
|
|
Участник форума
Регистрация: 18.01.2008
Сообщений: 158
С нами:
9637731
Репутация:
106
|
|
ты уверен что у тебя паблик кей верно находит?
попробуй в мемо вывести public_key
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|