Delphi Dünyası
İpuçları => Delphi ipuçları => Internet & LAN => Konuyu başlatan: sadik12 - 30 Aralık 2007 13:33:53
-
delphide formun üzerine bi tane webbrowser koydum bu webbrowsere bilgi aktrarnam lazım
mesala t.c kimlik numarasını bulmak için comboboxtan adını seçtim gidecek webbrowsere onu yazacak kod arıyorum
ben onu mosusenin koordinatlarını değiştirip kopyala yapıştır yaptırarak yapmıştım ama bu sürekli bi çözüm deil artı çözünürlük değiştinde progra işlemiyo
cevaplarınızı bekliyorum
-
bunu bulmam lazım bi yardım eli uzatı verin
-
Arkadaşım sabırlı ol, her yazılan sorunun cevabı bilinecek diye mecburiyet yok, çözüm önerisi olmayanların cevap yazmasına da zaten gerek yok. Sana göre makul süre içerisinde cevap gelmediyse bilen çıkmamıştır, başka yollar araştırmanı tavsiye ederim.
Siteye jeton atmışsın da jetonunu yutmuşuz gibi niye siteyi yumrukluyorsun? Forum kurallarını okuyup ona göre soruna bir başlık bile yazmamışsın. Başlık kısmında sorunuzun tek cümlelik özeti olmalı ki forum ve bilgi paylaşımı mantığına uysun. Yoksa "sadece benim işimi gör, sonra ne halin varsa gör..." gibi bir anlayış hissedilir.
-
Önce şunu sorayım webbrowser'a bilgi parametre gönderdiğin zaman nasıl T.C. kimlik no sorgulamayı düşünüyorsun? Güvenlik resmi olayını nasıl halledeceksin? İlla ki elle girmek zorunda değil misin onu?
-
ya kusura bakmayın da sabahtan beri onu arıyorum ama bulamıyorum
güvenlik kodunu bende biliyorum onu geçtik
bana sadece o sitedeki formları doldurması lazım böyle bir programın kodları lazım anlatabildim biraz seri olursanız çok makbule geçersiniz
şimdiden teşekkürler
-
Seri olayım, makbule geçeyim o zaman... Yapabileceğini sanmıyorum, hele de seri olarak yapabileceğini hiç sanmıyorum. Datastring ile parametre gönderilmeyen bir site seçmişsin. Diğer türlü nasıl olacak bilmiyorum. Ayrıca güvenlik kodu işini nasıl geçtiğini anlatırsan iyi olur, onu atlatıp da diğerlerinde takılman ilginç geldi. Biz de birşey öğrenelim senden böylece. Hatta belki sen o konuyu anlatınca diğer konuyu çözebiliriz belli mi olur...
-
benim aslında amacım şu sürücü takip programı yapıyorum bütün işlerini bitirdim
adma kayıtlı kulklanıcıların tc numarasını bulacak
onun için saygı deger müşterim nasıl onu düşündüyse kopyal yapıştır yapmıyacakmış sadece
combobox tan kayıtlı kullanıcıları seçip bütün alanları doldurup
t.c bulacakmış güvenlik kodunu ben ona söyledim zaten onu bişey yapmayız zatende
yani burda amaç webbroser kayıları kullanıcıların adlarını soyaddlarını baba adlarını anne adlarının tarihi gönderme amaç o yani adam diğer formu açıp ta kopyala yapıştır yapmıyacak
mesale o şimdiden teşekkürler
çabuk istememinde sebebi program bitti bi orası kaldı ve yarın akşama kadar teslim etmmem lazım adam acele edip duruyo zaten
-
peki indy ile post komutunu kullanmayı denedin mi? bize o kısımla ilgili kod versen daha çok yardımcı olacağız. indy'deki post komutu sitedeki bir forma bilgi göndermeye yarar ayrıca geri dönen değeri de indy ile okutabilirsin.
-
C# ile yapılmış bir örnek var ama delphi olarak bulamadım.
http://www.ceturk.com/forum/forum_posts.asp?TID=7646&KW=webbrowser
Bence google'a yönelip hazır birşeyler bulmalısın, bu işi hallettiğinde kodlarını burada da paylaşırsan seviniriz.
-
Delphi için bir örnek buldum ama denemedim. Buradaki Parametreler değişkeni senin sayfaya göndereceğin Ad, Soyad gibi değişkenleri içermeli. Burda örnek olması açısından myUsername ve myPassword kullanılmış. POST ettikten sonra geri dönecek olan değer(TC Kimlik No) GeriDonenDeger değişkeninden okunabilir.
procedure TForm1.Button1Click(Sender: TObject);
var
Parametreler: TStringStream;
GeriDonenDeger: String;
begin
Parametreler := TStringStream.Create('');
with idhttp1 do
begin
Parametreler.WriteString('myUsername=USERNAME&');
Parametreler.WriteString('myPassword=PASSWORD');
Request.ContentType := 'application/x-www-form-urlencoded';
try
Response.KeepAlive := False;
GeriDonenDeger:= Post('http://www.sayfa_urlsi.com', Parametreler );
except
on E: Exception do
showmessage('POST ederken hata olustu: ' + E.Message);
end;
end;
Parametreler.Free;
end;
-
Kimlik sorgulama sayfası QueryString kullanmıyor. İstenen şey sadece kutulara kopyala-yapıştır işlemi. QueryString kullanılıyor olsaydı bile güvenlik resmi yüzünden yine post edemez ve GeriDonenDeger'i alamazdık.
-
Akrep mahsuru yoksa hangi sayfa olduğunu yazabilir misin? Merak ettim de.
-
akrep o yönde paylaşım yönünde hiç şüphen olmasın paylaşıcam zaten bu siteyi sevdim zaten de zaten bi bulsam sabahtan beri onu arıyorum
-
Bahsi geçen site eğer TC kimlik No sorgulama sayfası ise daha önceleri XMLWeb servsleri açıktı ve o zaman bu servisleri kullanarak bir program aracılığı ile bilgiler alına biliyordu bir süre sonra bu servisler durduruldu, sanıyorum para ile veriyorlar.
-
şimdi bilader ben sabahtan beri hem aradım hem programla ugraştım yaptırdım ama nasıl yaptırdım mouse combobox a git ctrl+ c tuşlarınıa bastırdım mouse webbrowser koordinatlarına götürdüm oraya ctrl+v tuşlarını bastırtım hızlı bişekildede yapıyo farkedilmiyo ama diğer türlü olsa daha iyi olur
-
Yapman güzel bir şey fakat, yarın sayfanın dizaynı değişince ne olacak?
-
yani bende onda diyorum tekrar tekrar iş bi yolu olmalı ben en azından bulamassam diye yaptım yarın teslim edicem
-
Açık kaynak kısmında paylaştığım sigorta sicili sorgulayan programım ..
İnternet Üzerindeki bir formu nasıl doldurcağına yardımcı olabilir..
http://rapidshare.com/files/69696047/Yeni_Klasoer.rar.html
-
doğrulama kodunu göstermek için
Function AradanSec( text, ilk, son:widestring ): String; // html parse için fonksiyon
begin
Delete(Text, 1, pos(ilk, Text) + Length(ilk)-1);
Result := Copy(Text, 1, Pos(Son, Text)-1);
end;
function indir(Source, Dest : String): Boolean; // RESMİ DOWNLOAD ETMEK İÇİN FONKSİYON
begin
try
Result := URLDownloadToFile(nil,PChar(Source),PChar(Dest),0,nil) = 0
except
Result := False;
end;
end;
procedure tform1.resimal();
var
s : widestring;
s1: string;
begin
// memoyu temizledik
memo1.Lines.Clear;
//kaynak kodları memoya aldık
Memo1.lines.Text := IdHTTP1.Get(UTF8Encode('http://tckimlik.nvi.gov.tr/Web/QueryIdentityNumber.aspx'));
// html i parseledik
s := Memo1.Lines.Text;
s1:= AradanSec(s,'<img src="KPSImages.axd?type=dynamicimage&Val=' , ' " id="mimgSecurityCode" ');
// resmi indirdik
indir('http://tckimlik.nvi.gov.tr/Web/KPSImages.axd?type=dynamicimage&Val='+s1,'C:\a.gif');
// image a yükledik ...
Image1.Picture.LoadFromFile('C:\a.gif');
end;
arkadaşlar s1:= AradanSec(s,'<img src="KPSImages.axd?type=dynamicimage&Val=' , '" id="mimgSecurityCode"'); bu satıda
Syntax Highlighter şaşıryor kırmızı olan kısım gibi olucak
sorgulamak içinde aşağıdaki kodu kullanmıştım sitedeki textbox ların içini doldruyor ama il ve ilçede çakıyor..
post veya get işlemiyle oturum kodunu falan da parselemek gerekiyor fazla uğraşmadığım için ssadece böyle denemiştim..
geliştirilebilir..
var
Doc: IHTMLDocument2;
tik : OleVariant;
begin
WebBrowser1.Navigate( 'http://tckimlik.nvi.gov.tr/Web/QueryIdentityNumber.aspx');
While WebBrowser1.ReadyState <> READYSTATE_Complete do
Application.ProcessMessages;
WebBrowser1.OleObject.Document.GetElementByID('ctlCity').Value :='35';
WebBrowser1.OleObject.Document.GetElementByID('ctlDistrict').Value :='1819';
WebBrowser1.OleObject.Document.GetElementByID('ctlFirstName').Value :='Ali';
WebBrowser1.OleObject.Document.GetElementByID('ctlLastName').Value :='YEŞİLOĞLU';
WebBrowser1.OleObject.Document.GetElementByID('mnbxSecurityCode').value :=Edit3.Text;
WebBrowser1.OleObject.Document.GetElementByID('ctlCilt').Value :='51';
WebBrowser1.OleObject.Document.GetElementByID('ctlAileSiraNo').Value :='00789';
WebBrowser1.OleObject.Document.GetElementByID('ctlSiraNo').Value :='0028';
WebBrowser1.OleObject.Document.GetElementByID('ctlFatherName').Value :='Kenan';
WebBrowser1.OleObject.Document.GetElementByID('ctlMotherName').Value :='Kıymet';
WebBrowser1.OleObject.Document.GetElementByID('ctlBirthDate').Value :='1988';
WebBrowser1.OleObject.Document.GetElementByID('ctlSex').Value :='E';
Doc := IHTMLDocument2(WebBrowser1.Document);
tik := WebBrowser1.oleobject.Document.GetElementByID('ctlQueryFromData');
tik.Click;
şeklinde denemiştim bende zamanında ama il ve ilçede takıldım :) ili seçtikten sonra sayfa kendini yeniliyor ve ilçe listesini güncelliyor..
fazla durmamıştım üstünde zaten...
-
doğrulama kodunu göstermek için
....
arkadaşlar s1:= AradanSec(s,'<img src="KPSImages.axd?type=dynamicimage&Val=' , '" id="mimgSecurityCode"'); bu satıda
Syntax Highlighter şaşıryor kırmızı olan kısım gibi olucak
....
Bu açıklama
s1:= AradanSec(s,'<IMG id=mimgSecurityCode src="KPSImages.axd?type=dynamicimage&Val=' , ' " ?);
satırı için mi?, eğer öyle ise SynHighlighter ile ilgilenmem gerekecek te. çünkü hiç alakası yok. :(
-
doğrulama kodunu göstermek için
....
arkadaşlar s1:= AradanSec(s,'<img src="KPSImages.axd?type=dynamicimage&Val=' , '" id="mimgSecurityCode"'); bu satıda
Syntax Highlighter şaşıryor kırmızı olan kısım gibi olucak
....
Bu açıklama
s1:= AradanSec(s,'<IMG id=mimgSecurityCode src="KPSImages.axd?type=dynamicimage&Val=' , ' " ?);
satırı için mi?, eğer öyle ise SynHighlighter ile ilgilenmem gerekecek te. çünkü hiç alakası yok. :(
@Kocatürk hocam tırnak işaretlerini ve boşlukları html deki gibi % li gösteriyor..
%27%20%C2%A0 Bu şekilde gösteriyor ama aslında orası sadece tek tırnak ve bir boşluk bende anlamadım neden öyle yaptı :S
-
:_ds sen olması gereken kodu bana herhangi bir tag içerisine almadan pm olarak gönderirsen ben bir bakayım. Gerçi SynHghlghtr ın son sürümünü siteye uyarlamak için uğraşıyorum ama enazından bununla ilgili bir şey yapabilirmiyiz bir bakalım.