Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.01.2012, 03:10   #1
Boy7407
 
Регистрация: 06.01.2012
Сообщений: 6
По умолчанию captcha

Я новичок , и вообще пишу первую программу.
Мне нужно , что бы капча выводилась при запуске программы.
Т.е обычная авторизация.
Нашел две капчи
https://l2.overworld.su/captcha/
https://l2.overworld.su/captcha/?0.09601822070382149

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdHTTP, StdCtrls, Buttons, ExtCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    BitBtn1: TBitBtn;
    IdHTTP1: TIdHTTP;
    Edit3: TEdit;
    Image1: TImage;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Memo1: TMemo;
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);
var
LoginData, Response: TStrings;
begin
LoginData := TStringList.Create;
Response := TStringList.Create;
try
LoginData.Add('login='+Edit1.Text);
LoginData.Add('password='+Edit2.Text);
LoginData.Add('login=submit');
LoginData.Add('x=0');
LoginData.Add('y=0');
Response.Text := IdHTTP1.Post('https://l2.overworld.su/account/login/',LoginData);
if Pos('logout',Response.Text)>0 then
ShowMessage('Success!')
else
ShowMessage('Epic fail =(');
finally
LoginData.Free;
end;
end;

begin
end.
Нужно что бы капча отображалась в "Image1"
Буду очень благодарен кто поможет!)
Boy7407 вне форума Ответить с цитированием
Старый 06.01.2012, 17:43   #2
Boy7407
 
Регистрация: 06.01.2012
Сообщений: 6
По умолчанию

я не спал 30 часов , помогите пожалуйста...
Boy7407 вне форума Ответить с цитированием
Старый 06.01.2012, 18:39   #3
fucil
Форумчанин
 
Регистрация: 24.02.2010
Сообщений: 148
По умолчанию

я так пронял тебе просто нужно вытянуть капчу в image1 с указанной ссылки?
_______________
стоп
Во-первых там https протокол, а ты пытаешься использовать idhttp компонент, который работает только с http протоколом (он не работает с https)
Советую использовать синапс
Во-вторых капча тоже на https, то-есть idhttp компонент тебе тут не поможет, снова нужно использовать синапс
и вот те ещё код. Только он для .png формата те нужно переписать немного под jpg.
Код:
procedure getcapcha;
var
  MS:TMemoryStream;
  pic: TJPEGImage; //   <----------- используй JPEG формат
  png: TPngObject;
begin
try
  MS:=TMemoryStream.Create;
  httpsend.HTTPMethod('get','https://l2.overworld.su/captcha');
  httpsend.Document.SaveToStream(MS);
  MS.Position:=0;
  pic:= TJPEGImage.Create;  //   <----------- используй JPEG формат
  png:=TPngObject.Create;
  png.LoadFromStream(MS);
  FrmMain.Image1.Picture.Assign(png);
  MS.Free;
  pic.Free;
except
    on e:Exception do
    begin
      messagedlg('Ошибка подключения.',mterror, [mbok],0);
      exit;
      end;
    end;
end;

Последний раз редактировалось fucil; 06.01.2012 в 18:53.
fucil вне форума Ответить с цитированием
Старый 06.01.2012, 21:48   #4
Boy7407
 
Регистрация: 06.01.2012
Сообщений: 6
По умолчанию

ICQ либо Скайп ваш можно?

Последний раз редактировалось Boy7407; 06.01.2012 в 21:58.
Boy7407 вне форума Ответить с цитированием
Старый 06.01.2012, 22:11   #5
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Во-первых там https протокол, а ты пытаешься использовать idhttp компонент, который работает только с http протоколом (он не работает с https)
не надо врать, работает он с SSL.
подключить нужно SSLHandler просто.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 06.01.2012, 23:22   #6
Boy7407
 
Регистрация: 06.01.2012
Сообщений: 6
По умолчанию

Может это кто в код внедрить?

Код:
procedure getcapcha;
var
  MS:TMemoryStream;
  pic: TJPEGImage; //   <----------- используй JPEG формат
  png: TPngObject;
begin
try
  MS:=TMemoryStream.Create;
  httpsend.HTTPMethod('get','https://l2.overworld.su/captcha');
  httpsend.Document.SaveToStream(MS);
  MS.Position:=0;
  pic:= TJPEGImage.Create;  //   <----------- используй JPEG формат
  png:=TPngObject.Create;
  png.LoadFromStream(MS);
  FrmMain.Image1.Picture.Assign(png);
  MS.Free;
  pic.Free;
except
    on e:Exception do
    begin
      messagedlg('Ошибка подключения.',mterror, [mbok],0);
      exit;
      end;
    end;
end;
Под JPEG Переделать помогите)
Boy7407 вне форума Ответить с цитированием
Старый 07.01.2012, 20:17   #7
fucil
Форумчанин
 
Регистрация: 24.02.2010
Сообщений: 148
Восклицание

Пепел Феникса а ты злой (это не враньё, а ошибка или скорее всего незнание). На то это и форум что-бы выразить свою идею, а другой мог меня поправить при ошибке!
Вот я, почему то был неслышен и уверен что idhttp не работает с https.

Вообщем тут то всего то нечего поменять в коде, ты Boy7407 ленив и ждешь готового!

вот держи код:

Код:
procedure GetCapcha;
var
  MS:TMemoryStream;
  pic: TJPEGImage;
begin
try
  MS:=TMemoryStream.Create;
  httpsend.HTTPMethod('get','https://l2.overworld.su/captcha/');
  httpsend.Document.SaveToStream(MS);
  MS.Position:=0;
  pic:= TJPEGImage.Create;
 // png:=TPngObject.Create;
  pic.LoadFromStream(MS);
  FrmMain.Image1.Picture.Assign(pic);
  MS.Free;
  pic.Free;
except
    on e:Exception do
    begin
      messagedlg('Ошибка подключения.',mterror, [mbok],0);
      exit;
      end;
    end;
end;

Последний раз редактировалось fucil; 07.01.2012 в 20:20.
fucil вне форума Ответить с цитированием
Старый 07.01.2012, 20:30   #8
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

ну извините, погорячился, бывает.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 08.01.2012, 15:23   #9
Boy7407
 
Регистрация: 06.01.2012
Сообщений: 6
По умолчанию

Цитата:
Сообщение от fucil Посмотреть сообщение
Пепел Феникса а ты злой (это не враньё, а ошибка или скорее всего незнание). На то это и форум что-бы выразить свою идею, а другой мог меня поправить при ошибке!
Вот я, почему то был неслышен и уверен что idhttp не работает с https.

Вообщем тут то всего то нечего поменять в коде, ты Boy7407 ленив и ждешь готового!

вот держи код:

Код:
procedure GetCapcha;
var
  MS:TMemoryStream;
  pic: TJPEGImage;
begin
try
  MS:=TMemoryStream.Create;
  httpsend.HTTPMethod('get','https://l2.overworld.su/captcha/');
  httpsend.Document.SaveToStream(MS);
  MS.Position:=0;
  pic:= TJPEGImage.Create;
 // png:=TPngObject.Create;
  pic.LoadFromStream(MS);
  FrmMain.Image1.Picture.Assign(pic);
  MS.Free;
  pic.Free;
except
    on e:Exception do
    begin
      messagedlg('Ошибка подключения.',mterror, [mbok],0);
      exit;
      end;
    end;
end;
Что в uses прописать?
никогда с синапсом не работал
Boy7407 вне форума Ответить с цитированием
Старый 08.01.2012, 18:01   #10
Arsenx777
Delphi, c++, php
Форумчанин
 
Аватар для Arsenx777
 
Регистрация: 14.03.2011
Сообщений: 288
По умолчанию

Цитата:
Сообщение от Boy7407 Посмотреть сообщение
Я новичок , и вообще пишу первую программу.
Гммм... Когда я начитал первую программу писать на delphi, она выгледела вот так:
Код:
edit1.text:='hellow word';
label1.caption:=edit1.text;
И я был рад!
Мудр тот, кто знает нужное, а не многое.

Arsenx777 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с CAPTCHA maximka787 PHP 2 24.08.2010 00:54
отловить Captcha akimov_aleks Работа с сетью в Delphi 3 01.04.2010 23:31
captcha DeDoK Работа с сетью в Delphi 9 30.03.2010 23:22
Как загрузить captcha и поместить её в TImage Streetracer Работа с сетью в Delphi 13 06.03.2010 01:45
Добавление Captcha и использование html belovivan2008 Мультимедиа в Delphi 0 12.02.2010 18:14