Yorumları: 137
Konuları: 25
Kayıt Tarihi: 10-12-2016
Rep Puanı: 337 Acemi
Selamlar bir sürü örnek var burada bununla ilgili ancak hiç biri işe yaramadı.
https://karisimbi.events/consumers-choic...f-the-year
Bu sayfadaki MONI baby altındaki Vote tıklanacak. Cash temizlenip tekrar tıklanacak. Hile gibi görünüyor ama rakip firmalar da bu hileyi kullanıyor. O nedenle sıkıntı yok. Operayı açıp cursörü oraya getirip tıklatıp yine cursor ile kapattırıp oy verdiriyorum ama uzun zaman alıyor. İşime yaramıyor.
Yaptığım ve denediğim yöntem kodlarda mevcut. Bunlar gibi bir çok kaynaktan yararlanmaya çalıştım fakat olmuyor.
http://www.delphiturkiye.com/forum/viewtopic.php?t=22058
https://stackoverflow.com/questions/21942040/delphi-webbrowser-how-to-get-value-from-tag-name-inside-id
https://www.delphican.com/showthread.php?tid=2270
unit fmtikla;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, shellapi, Vcl.ExtCtrls,
Vcl.OleCtrls, SHDocVw, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdHTTP, System.Net.URLClient, System.Net.HttpClient,
System.Net.HttpClientComponent, Vcl.DBCtrls, Winapi.WebView2, Winapi.ActiveX,
Vcl.Edge;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Timer1: TTimer;
Timer2: TTimer;
Button1: TButton;
Button2: TButton;
EdgeBrowser1: TEdgeBrowser;
procedure koordinat;
procedure Timer1Timer(Sender: TObject);
procedure Timer2Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
StreamData :TMemoryStream;
Url,html,sec, sayfa,burc, burc1,deger,ad, link, resim, fiyat, indirim : string;
implementation
{$R *.dfm}
Function aradansec( text, ilk, son:String ): String;
begin
Delete(Text, 1, pos(ilk, Text) + Length(ilk)-1);
Result := Copy(Text, 1, Pos(Son, Text)-1);
end;
function degis(s:string):string;
var
sonuc:String;
secenek:TReplaceFlags;//unutmayın
begin
result:='';
secenek:=[rfReplaceAll]; //Harf Duyarlılığı var
s:=StringReplace(s,'ý','ı',secenek); //ÝÞ Ð
s:=StringReplace(s,'þ','ş',secenek);
s:=StringReplace(s,'ð','ğ',secenek);
s:=StringReplace(s,'Ý','İ',secenek); // yaðýþ
s:=StringReplace(s,'Þ','Ş',secenek);
s:=StringReplace(s,'Ð','Ğ',secenek);
result:=s;
end;
procedure soltikla;
begin
Mouse_Event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
Mouse_Event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
end;
// Sağ tuş ile tıklama için
procedure sagtikla;
begin
Mouse_Event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0);
Mouse_Event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0);
end;
// Çift tıklama için
procedure cifttikla;
begin
soltikla;
GetDoubleClickTime;
soltikla;
end;
function StartApp(apchOperation, apchFileName, apchParameters, apchDirectory: PChar;awrdShowCmd: Word): Cardinal;
var
lseiInfo: TShellExecuteInfo;
begin
Result := 0;
FillChar(lseiInfo, SizeOf(lseiInfo), Chr(0));
lseiInfo.cbSize := SizeOf(lseiInfo);
lseiInfo.fMask := SEE_MASK_NOCLOSEPROCESS;
lseiInfo.lpVerb := apchOperation;
lseiInfo.lpFile := apchFileName;
lseiInfo.lpParameters := apchParameters;
lseiInfo.lpDirectory := apchDirectory;
lseiInfo.nShow := awrdShowCmd;
if Boolean(ShellExecuteEx(@lseiInfo)) then
Result := lseiInfo.hProcess;
end;
procedure KillProcess(hProcess: Cardinal);
Var
ovExitCode: LongWord;
begin
try
if hProcess <> 0 then begin
GetExitCodeProcess(hProcess, ovExitCode);
if (ovExitCode = STILL_ACTIVE) or (ovExitCode <> WAIT_OBJECT_0) then
TerminateProcess(hProcess, ovExitCode);
CloseHandle(hProcess);
end;
except
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
EdgeBrowser1.Navigate( 'https://karisimbi.events/consumers-choice-awards-cca/hygiene-sanitation-brand-of-the-year');
Application.ProcessMessages;
// WebBrowser1.OleObject.Document.GetElementByID('.vote').Click;
end;
procedure TForm1.koordinat;
var
p:TPoint;
begin
p:= Mouse.CursorPos;
Edit1.Text:=inttostr(p.X);
Edit2.Text:=inttostr(p.Y);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
koordinat;
end;
procedure islemebasla;
var hApp : Cardinal;
begin
ShellExecute(0, 'open', 'Opera.exe', Pchar('https://karisimbi.events/consumers-choice-awards-cca/hygiene-sanitation-brand-of-the-year'), '', SW_Normal);
Sleep(3000);
SetCursorPos(847,648);
soltikla;
Sleep(3000);
SetCursorPos(856,319);
soltikla;
SetCursorPos(1344,11);
soltikla;
SetCursorPos(818,410);
soltikla;
end;
procedure TForm1.Timer2Timer(Sender: TObject);
begin
islemebasla;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
timer2.Enabled := True;
end;
end.
Yorumları: 273
Konuları: 18
Kayıt Tarihi: 11-10-2016
Rep Puanı: 1.302 Programcı
Tahmin edeceğiniz üzere en hızlı çözüm tarayıcı kullanmamak ama bu çözüme gitmediğinize göre oy verme işlemini Javascript tetikliyor galiba. Eğer dil önemli değilse Python + PhantomJS (veya benzeri) işinize yarar mı acaba? Yada Selenium ile sayfa bir kere açılıp sonsuz döngüde sürekli refresh ettirilemez mi?
Yorumları: 137
Konuları: 25
Kayıt Tarihi: 10-12-2016
Rep Puanı: 337 Acemi
(28-01-2022, Saat: 17:06)Hayati Adlı Kullanıcıdan Alıntı: Tahmin edeceğiniz üzere en hızlı çözüm tarayıcı kullanmamak ama bu çözüme gitmediğinize göre oy verme işlemini Javascript tetikliyor galiba. Eğer dil önemli değilse Python + PhantomJS (veya benzeri) işinize yarar mı acaba? Yada Selenium ile sayfa bir kere açılıp sonsuz döngüde sürekli refresh ettirilemez mi?
Sayfa bir defa açılıp sonsuz döngüde sürekli refresh yapıldığında VOTE değil verilen oy miktarı ekranı çıkacaktır diye tahmin ediyorum. Çünkü chrome, edge, ( Twebbrowser'da sayfa nedense hiç açılmıyor o yüzden bir şey yapamadım. Hata vermiyor ekran boş kalıyor) gibi browserlarda hafızada kalıyor. Cash temizlendiğinde ancak oy verme ekranı tekrar geliyor.
Pyhton + PhantomJS kullanmadım. Ama mutlaka bu işleri yapan kütüphaneleri vardır onların  ve kolaylıkla yapabiliyorlardır.
Yorumları: 273
Konuları: 18
Kayıt Tarihi: 11-10-2016
Rep Puanı: 1.302 Programcı
Tamam iste hocam, Selenium da cash temizleme olup olmadigina bakmak lazim, su an uygun degilim ama bende arastiracagim, varsa python ile cozeriz.
Yorumları: 137
Konuları: 25
Kayıt Tarihi: 10-12-2016
Rep Puanı: 337 Acemi
29-01-2022, Saat: 13:34
(Son Düzenleme: 29-01-2022, Saat: 14:53, Düzenleyen: Jakarta2.)
(28-01-2022, Saat: 19:55)Hayati Adlı Kullanıcıdan Alıntı: Tamam iste hocam, Selenium da cash temizleme olup olmadigina bakmak lazim, su an uygun degilim ama bende arastiracagim, varsa python ile cozeriz.
Çok çok teşekkür ederim. Ben de pyhton'a geçmek istiyorum nereden başlamalıyım sizce? Yalan olmasın 2004 yılından beri delphi kullanıyorum. Delphi 7 ile XE 7 arasındaki versiyonlar hariç bütün versiyonlarda bir şeyler yapmaya çalıştım ama yeterince başarılı olamadığımı görüyorum. Program yazdın mı dersen. Evet ERP programı yazdım hem mobilde hem de desktop'da çalışan. Entegrasyon programı yazdım. Mikro yazılım'a entegre. Mikrodaki ürünlerden istediği N11 ve wordpress'e tek butonla ekleyebilen, oradaki satışları mikroya düşürüp fatura kestirebilen ve bildirim gönderen. Depo yönetimi yazdım. v.s. v.s. fakat. Bunlardan 1 kuruş kazandın mı dersen hayır.
Şimdi son noktada basit bir web sayfasındaki bir butona tıklatamayan programı (hatta patch) yazamıyorsam boşuna zorlamışım kendimi. Hiç programcı olamamışım. Kendimi avutmuşum yıllardır.
Yorumları: 124
Konuları: 2
Kayıt Tarihi: 31-08-2021
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 550 Acemi
29-01-2022, Saat: 19:45
(Son Düzenleme: 29-01-2022, Saat: 19:47, Düzenleyen: vedat35.)
gördüğüm kadarıyla sunucu tarafında mongodb kullanışmış jquery üzerinden bağlanan ip adresinin ülke ve konum bilgisi https://freegeoip.app/json/ adresinden sorgulanıyor şöyle bir data alınıyor,
{"ip":"x.x.x","country_code":"TR","country_name":"Turkey","region_code":"34","region_name":"Istanbul","city":"Istanbul","zip_code":"34120","time_zone":"Europe/Istanbul","latitude":41.0011,"longitude":28.9687,"metro_code":0}
GET -> https://api.karisimbi.events/api/events/get/award
adresinden vote için kullanılmak üzere
{"success":true,"event":{"_id":"61eb132c787ff108528dff00","title":"CONSUMERS CHOICE AWARDS (CCA)","subtitle":"Consumers Choice Awards (CCA) is organized by KARISIMBI EVENTS with the sole purpose of honoring resilient companies, organizations and individual businesses whose products are defined by high quality and reputation.","slug":"consumers-choice-awards-cca","coverImage":"https://api.karisimbi.events/uploads/images/1642795820515--recoginition.jpeg","location":"Kigali Marriot Hotel","date":"2022-05-13T08:33:12.000Z","__v":0},"award":{"_id":"61ec3aad787ff108528e02be","title":"HYGIENE & SANITATION BRAND OF THE YEAR ","eventId":"61eb132c787ff108528dff00","slug":"hygiene-sanitation-brand-of-the-year","nominees":[{"nominee":{"_id":"61ed146c2cd17091d3650080","name":"CLEAR","imageUrl":"0"},"votes":670,"_id":"61ed14812cd17091d3650085"},{"nominee":{"_id":"61ed14b52cd17091d3650087","name":"SULFO","imageUrl":"0"},"votes":516,"_id":"61ed14c62cd17091d365008d"},{"nominee":{"_id":"61ed14f42cd17091d3650090","name":"BABY STEPS","imageUrl":"0"},"votes":112,"_id":"61ed15042cd17091d3650097"},{"nominee":{"_id":"61ed151b2cd17091d365009b","name":"SUPA","imageUrl":"0"},"votes":936,"_id":"61ed152f2cd17091d36500a3"},{"nominee":{"_id":"61edd51f930bcc5eba381d6a","name":"MALAIKA","imageUrl":"0"},"votes":61,"_id":"61edd541930bcc5eba381d75"},{"nominee":{"_id":"61edd55a930bcc5eba381d7d","name":"MAMI LOVE","imageUrl":"0"},"votes":10459,"_id":"61edd58a930bcc5eba381d89"},{"nominee":{"_id":"61ee4c2554a126230cf212a1","name":"MONI baby","imageUrl":"0"},"votes":16815,"_id":"61ee4c4254a126230cf21488"},{"nominee":{"_id":"61f04519b169af666407090d","name":"TAMU SANITARY PAD","imageUrl":"0"},"votes":14116,"_id":"61f04520b169af6664070bb7"}],"__v":0}}
alınıyor,
MONI baby için;
POST -> https://api.karisimbi.events/api/nominee/vote
Accept: application/json
Payload: {"awardId":"61ec3aad787ff108528e02be","nomineeId":"61ee4c2554a126230cf212a1"}
gönderiliyor, forumda basit bir arama yaparsanız idhttp ile yukarıdaki adrese payload veri ile post çekebilirsiniz.
Yorumları: 273
Konuları: 18
Kayıt Tarihi: 11-10-2016
Rep Puanı: 1.302 Programcı
@ Jakarta2 geç yazdığım için kusura bakmayın. Ben size yol gösterecek durumda değilim ama naçizane önerilerimi yazayım. Ben "kitapçı"yım evimde hemen her dille ilgili bir kaç kitap var ama bu çok eski bir alışkanlık. Programlama ve algoritmayı bildiğinize göre bence kitaba ihtiyacınız yok, bir kaç günlük araştırma ve pratik ile dilin syntax'ını kavradıktan sonra gerisi gelecek zaten. Bence ihtiyacınız olan ilk şey bu, hızlıca, 1 videoda xxx serilerini inceleyin
Yazılım Bilimi
Tirendaz Akademi
Engin Demiroğ
Daha teferruatlı 99 derslik bir seri Arin Yazilim
https://python-istihza.yazbel.com/
istihza.com'un PDF'ini sizin için upload ettim
Yorumları: 137
Konuları: 25
Kayıt Tarihi: 10-12-2016
Rep Puanı: 337 Acemi
31-01-2022, Saat: 13:33
(Son Düzenleme: 31-01-2022, Saat: 15:03, Düzenleyen: Jakarta2.)
(30-01-2022, Saat: 13:41)Hayati Adlı Kullanıcıdan Alıntı: @Jakarta2 geç yazdığım için kusura bakmayın. Ben size yol gösterecek durumda değilim ama naçizane önerilerimi yazayım. Ben "kitapçı"yım evimde hemen her dille ilgili bir kaç kitap var ama bu çok eski bir alışkanlık. Programlama ve algoritmayı bildiğinize göre bence kitaba ihtiyacınız yok, bir kaç günlük araştırma ve pratik ile dilin syntax'ını kavradıktan sonra gerisi gelecek zaten. Bence ihtiyacınız olan ilk şey bu, hızlıca, 1 videoda xxx serilerini inceleyin
Yazılım Bilimi
Tirendaz Akademi
Engin Demiroğ
Daha teferruatlı 99 derslik bir seri Arin Yazilim
https://python-istihza.yazbel.com/
istihza.com'un PDF'ini sizin için upload ettim
Çok çok teşekkür ederim kardeşim...
(29-01-2022, Saat: 19:45)vedat35 Adlı Kullanıcıdan Alıntı: gördüğüm kadarıyla sunucu tarafında mongodb kullanışmış jquery üzerinden bağlanan ip adresinin ülke ve konum bilgisi https://freegeoip.app/json/ adresinden sorgulanıyor şöyle bir data alınıyor,
{"ip":"x.x.x","country_code":"TR","country_name":"Turkey","region_code":"34","region_name":"Istanbul","city":"Istanbul","zip_code":"34120","time_zone":"Europe/Istanbul","latitude":41.0011,"longitude":28.9687,"metro_code":0}
GET -> https://api.karisimbi.events/api/events/get/award
adresinden vote için kullanılmak üzere
{"success":true,"event":{"_id":"61eb132c787ff108528dff00","title":"CONSUMERS CHOICE AWARDS (CCA)","subtitle":"Consumers Choice Awards (CCA) is organized by KARISIMBI EVENTS with the sole purpose of honoring resilient companies, organizations and individual businesses whose products are defined by high quality and reputation.","slug":"consumers-choice-awards-cca","coverImage":"https://api.karisimbi.events/uploads/images/1642795820515--recoginition.jpeg","location":"Kigali Marriot Hotel","date":"2022-05-13T08:33:12.000Z","__v":0},"award":{"_id":"61ec3aad787ff108528e02be","title":"HYGIENE & SANITATION BRAND OF THE YEAR ","eventId":"61eb132c787ff108528dff00","slug":"hygiene-sanitation-brand-of-the-year","nominees":[{"nominee":{"_id":"61ed146c2cd17091d3650080","name":"CLEAR","imageUrl":"0"},"votes":670,"_id":"61ed14812cd17091d3650085"},{"nominee":{"_id":"61ed14b52cd17091d3650087","name":"SULFO","imageUrl":"0"},"votes":516,"_id":"61ed14c62cd17091d365008d"},{"nominee":{"_id":"61ed14f42cd17091d3650090","name":"BABY STEPS","imageUrl":"0"},"votes":112,"_id":"61ed15042cd17091d3650097"},{"nominee":{"_id":"61ed151b2cd17091d365009b","name":"SUPA","imageUrl":"0"},"votes":936,"_id":"61ed152f2cd17091d36500a3"},{"nominee":{"_id":"61edd51f930bcc5eba381d6a","name":"MALAIKA","imageUrl":"0"},"votes":61,"_id":"61edd541930bcc5eba381d75"},{"nominee":{"_id":"61edd55a930bcc5eba381d7d","name":"MAMI LOVE","imageUrl":"0"},"votes":10459,"_id":"61edd58a930bcc5eba381d89"},{"nominee":{"_id":"61ee4c2554a126230cf212a1","name":"MONI baby","imageUrl":"0"},"votes":16815,"_id":"61ee4c4254a126230cf21488"},{"nominee":{"_id":"61f04519b169af666407090d","name":"TAMU SANITARY PAD","imageUrl":"0"},"votes":14116,"_id":"61f04520b169af6664070bb7"}],"__v":0}}
alınıyor,
MONI baby için;
POST -> https://api.karisimbi.events/api/nominee/vote
Accept: application/json
Payload: {"awardId":"61ec3aad787ff108528e02be","nomineeId":"61ee4c2554a126230cf212a1"}
gönderiliyor, forumda basit bir arama yaparsanız idhttp ile yukarıdaki adrese payload veri ile post çekebilirsiniz.
Öncelikle teşekkür ederim.
idhttp ssl hatası vereceğinden nethttpclient kullandım. Dönen cevap bu oldu. {"success":false,"message":"Not Found"} sanırım olmadı.
procedure TForm1.Button2Click(Sender: TObject);
var
NetHTTPClient: TNetHTTPClient;
Request: TStringList;
StreamData :TMemoryStream;
begin
try
Request := TStringList.Create;
StreamData := TMemoryStream.Create;
try
Request.Add('awardId='+'61ec3aad787ff108528e02be');
Request.Add('nomineeId='+ '61ee4c2554a126230cf212a1');
NetHTTPClient := TNetHTTPClient.Create(Nil);
try
NetHTTPClient.AllowCookies := True;
NetHTTPClient.HandleRedirects := True;
NetHTTPClient.Post('https://api.karisimbi.events/api/nominee/vote', Request);
Memo1.Lines.Add(NetHTTPClient.Get('https://api.karisimbi.events/api/nominee/vote', StreamData).ContentAsString);
finally
NetHTTPClient.Free;
end;
finally
Request.Free;
end;
except
end;
Application.ProcessMessages;
end;
Yorumları: 124
Konuları: 2
Kayıt Tarihi: 31-08-2021
Aktif Kullandığınız Delphi Sürümü:
Rep Puanı: 550 Acemi
(31-01-2022, Saat: 13:33)Jakarta2 Adlı Kullanıcıdan Alıntı: (30-01-2022, Saat: 13:41)Hayati Adlı Kullanıcıdan Alıntı: @Jakarta2 geç yazdığım için kusura bakmayın. Ben size yol gösterecek durumda değilim ama naçizane önerilerimi yazayım. Ben "kitapçı"yım evimde hemen her dille ilgili bir kaç kitap var ama bu çok eski bir alışkanlık. Programlama ve algoritmayı bildiğinize göre bence kitaba ihtiyacınız yok, bir kaç günlük araştırma ve pratik ile dilin syntax'ını kavradıktan sonra gerisi gelecek zaten. Bence ihtiyacınız olan ilk şey bu, hızlıca, 1 videoda xxx serilerini inceleyin
Yazılım Bilimi
Tirendaz Akademi
Engin Demiroğ
Daha teferruatlı 99 derslik bir seri Arin Yazilim
https://python-istihza.yazbel.com/
istihza.com'un PDF'ini sizin için upload ettim
Çok çok teşekkür ederim kardeşim...
(29-01-2022, Saat: 19:45)vedat35 Adlı Kullanıcıdan Alıntı: gördüğüm kadarıyla sunucu tarafında mongodb kullanışmış jquery üzerinden bağlanan ip adresinin ülke ve konum bilgisi https://freegeoip.app/json/ adresinden sorgulanıyor şöyle bir data alınıyor,
{"ip":"x.x.x","country_code":"TR","country_name":"Turkey","region_code":"34","region_name":"Istanbul","city":"Istanbul","zip_code":"34120","time_zone":"Europe/Istanbul","latitude":41.0011,"longitude":28.9687,"metro_code":0}
GET -> https://api.karisimbi.events/api/events/get/award
adresinden vote için kullanılmak üzere
{"success":true,"event":{"_id":"61eb132c787ff108528dff00","title":"CONSUMERS CHOICE AWARDS (CCA)","subtitle":"Consumers Choice Awards (CCA) is organized by KARISIMBI EVENTS with the sole purpose of honoring resilient companies, organizations and individual businesses whose products are defined by high quality and reputation.","slug":"consumers-choice-awards-cca","coverImage":"https://api.karisimbi.events/uploads/images/1642795820515--recoginition.jpeg","location":"Kigali Marriot Hotel","date":"2022-05-13T08:33:12.000Z","__v":0},"award":{"_id":"61ec3aad787ff108528e02be","title":"HYGIENE & SANITATION BRAND OF THE YEAR ","eventId":"61eb132c787ff108528dff00","slug":"hygiene-sanitation-brand-of-the-year","nominees":[{"nominee":{"_id":"61ed146c2cd17091d3650080","name":"CLEAR","imageUrl":"0"},"votes":670,"_id":"61ed14812cd17091d3650085"},{"nominee":{"_id":"61ed14b52cd17091d3650087","name":"SULFO","imageUrl":"0"},"votes":516,"_id":"61ed14c62cd17091d365008d"},{"nominee":{"_id":"61ed14f42cd17091d3650090","name":"BABY STEPS","imageUrl":"0"},"votes":112,"_id":"61ed15042cd17091d3650097"},{"nominee":{"_id":"61ed151b2cd17091d365009b","name":"SUPA","imageUrl":"0"},"votes":936,"_id":"61ed152f2cd17091d36500a3"},{"nominee":{"_id":"61edd51f930bcc5eba381d6a","name":"MALAIKA","imageUrl":"0"},"votes":61,"_id":"61edd541930bcc5eba381d75"},{"nominee":{"_id":"61edd55a930bcc5eba381d7d","name":"MAMI LOVE","imageUrl":"0"},"votes":10459,"_id":"61edd58a930bcc5eba381d89"},{"nominee":{"_id":"61ee4c2554a126230cf212a1","name":"MONI baby","imageUrl":"0"},"votes":16815,"_id":"61ee4c4254a126230cf21488"},{"nominee":{"_id":"61f04519b169af666407090d","name":"TAMU SANITARY PAD","imageUrl":"0"},"votes":14116,"_id":"61f04520b169af6664070bb7"}],"__v":0}}
alınıyor,
MONI baby için;
POST -> https://api.karisimbi.events/api/nominee/vote
Accept: application/json
Payload: {"awardId":"61ec3aad787ff108528e02be","nomineeId":"61ee4c2554a126230cf212a1"}
gönderiliyor, forumda basit bir arama yaparsanız idhttp ile yukarıdaki adrese payload veri ile post çekebilirsiniz.
Öncelikle teşekkür ederim.
idhttp ssl hatası vereceğinden nethttpclient kullandım. Dönen cevap bu oldu. {"success":false,"message":"Not Found"} sanırım olmadı.
procedure TForm1.Button2Click(Sender: TObject);
var
NetHTTPClient: TNetHTTPClient;
Request: TStringList;
StreamData :TMemoryStream;
begin
try
Request := TStringList.Create;
StreamData := TMemoryStream.Create;
try
Request.Add('awardId='+'61ec3aad787ff108528e02be');
Request.Add('nomineeId='+ '61ee4c2554a126230cf212a1');
NetHTTPClient := TNetHTTPClient.Create(Nil);
try
NetHTTPClient.AllowCookies := True;
NetHTTPClient.HandleRedirects := True;
NetHTTPClient.Post('https://api.karisimbi.events/api/nominee/vote', Request);
Memo1.Lines.Add(NetHTTPClient.Get('https://api.karisimbi.events/api/nominee/vote', StreamData).ContentAsString);
finally
NetHTTPClient.Free;
end;
finally
Request.Free;
end;
except
end;
Application.ProcessMessages;
end;
var
NetHTTPClient: TNetHTTPClient;
reqData, resContent:TStringStream;
begin
NetHTTPClient:=TNetHTTPClient.Create(Self);
NetHTTPClient.Accept:='application/json, text/plain, */*';
NetHTTPClient.UserAgent:='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.362';
NetHTTPClient.ContentType:='application/json; charset=utf-8';
NetHTTPClient.AcceptCharSet:='utf-8';
NetHTTPClient.ProtocolVersion:=THttpProtocolVersion.HTTP_2_0;
NetHTTPClient.AllowCookies:=True;
NetHTTPClient.HandleRedirects:=True;
resContent:=TStringStream.Create;
reqData:=TStringStream.Create('{"awardId":"61ec3aad787ff108528e02be", "nomineeId":"61ee4c2554a126230cf212a1"}', TEncoding.utf8);
NetHTTPClient.Post('https://api.karisimbi.events/api/nominee/vote', reqData, resContent);
memo1.Lines.Text:=resContent.DataString;
NetHTTPClient.Free;
resContent.Free;
reqData.Free;
Yorumları: 137
Konuları: 25
Kayıt Tarihi: 10-12-2016
Rep Puanı: 337 Acemi
31-01-2022, Saat: 16:48
(Son Düzenleme: 31-01-2022, Saat: 17:08, Düzenleyen: Jakarta2.)
(31-01-2022, Saat: 16:37)vedat35 Adlı Kullanıcıdan Alıntı: (31-01-2022, Saat: 13:33)Jakarta2 Adlı Kullanıcıdan Alıntı: Çok çok teşekkür ederim kardeşim...
Öncelikle teşekkür ederim.
idhttp ssl hatası vereceğinden nethttpclient kullandım. Dönen cevap bu oldu. {"success":false,"message":"Not Found"} sanırım olmadı.
procedure TForm1.Button2Click(Sender: TObject);
var
NetHTTPClient: TNetHTTPClient;
Request: TStringList;
StreamData :TMemoryStream;
begin
try
Request := TStringList.Create;
StreamData := TMemoryStream.Create;
try
Request.Add('awardId='+'61ec3aad787ff108528e02be');
Request.Add('nomineeId='+ '61ee4c2554a126230cf212a1');
NetHTTPClient := TNetHTTPClient.Create(Nil);
try
NetHTTPClient.AllowCookies := True;
NetHTTPClient.HandleRedirects := True;
NetHTTPClient.Post('https://api.karisimbi.events/api/nominee/vote', Request);
Memo1.Lines.Add(NetHTTPClient.Get('https://api.karisimbi.events/api/nominee/vote', StreamData).ContentAsString);
finally
NetHTTPClient.Free;
end;
finally
Request.Free;
end;
except
end;
Application.ProcessMessages;
end;
var
NetHTTPClient: TNetHTTPClient;
reqData, resContent:TStringStream;
begin
NetHTTPClient:=TNetHTTPClient.Create(Self);
NetHTTPClient.Accept:='application/json, text/plain, */*';
NetHTTPClient.UserAgent:='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.99 Safari/537.362';
NetHTTPClient.ContentType:='application/json; charset=utf-8';
NetHTTPClient.AcceptCharSet:='utf-8';
NetHTTPClient.ProtocolVersion:=THttpProtocolVersion.HTTP_2_0;
NetHTTPClient.AllowCookies:=True;
NetHTTPClient.HandleRedirects:=True;
resContent:=TStringStream.Create;
reqData:=TStringStream.Create('{"awardId":"61ec3aad787ff108528e02be", "nomineeId":"61ee4c2554a126230cf212a1"}', TEncoding.utf8);
NetHTTPClient.Post('https://api.karisimbi.events/api/nominee/vote', reqData, resContent);
memo1.Lines.Text:=resContent.DataString;
NetHTTPClient.Free;
resContent.Free;
reqData.Free;

Teşekkür ederim çalışıyor. Bizim kod 3 saniyede 1 tane basıyor. Adam kime yazdırdıysa 2-3 dakikada 10bin oylattı. Server, internet hızı v.s. alakalı değil mi anlamadım ki? Nasıl bir anda 10bin oy artırabilir?
Gerçekten teşekkür ederim. En azından bir daha böyle bir iş geldiğinde yapabileceğimizi öğrenmiş olduk sizin sayenizde...
|