Delphi a kontrola web linku

Programovacie jazyky, rady, poradňa...
4JOKE
Light Star
Light Star
Príspevky: 269
Registrovaný: 10 sep 2005, 10:23

Delphi a kontrola web linku

Príspevok od používateľa 4JOKE »

...potreboval by som si v Delphi nakodit nieco ako link checker...
...jednoducho ze by som si v nom dal meno a heslo napr. na post.sk a on by mi vypisal ze to meno heslo je spravne (teda asi budem kontrolovat stranku na ktoru to presmerovalo) ...

...potreboval by som aspon tak strucne co mam hladat na internete alebo cim zistit stranku cez delphi na ktoru to presmeruje po nalogovani... pretoze internetove aplikacie som este vobec neskusal robit v Delphi...

...thnx
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

V tom programe sa musíš pripojiť na ten web na port 80. Pošleš tam http požiadavku GET alebo POST (závisí to od toho, aký je atribút method v tagu form). A prímeš http odpoveď (v ktorej potom nájdeš to, čo potrebuješ).
Zdá sa mi, že Delphi má aj nejaké komponenty na prácu s http spojeniami (ale Delphi som používal naposledy pred niekoľkými rokmi, tak si už veľmi nepamätám).

// chrono: Tie http komponenty boli asi v nejakej Enterprise verzii
4JOKE
Light Star
Light Star
Príspevky: 269
Registrovaný: 10 sep 2005, 10:23

Príspevok od používateľa 4JOKE »

chrono napísal:V tom programe sa musíš pripojiť na ten web na port 80. Pošleš tam http požiadavku GET alebo POST (závisí to od toho, aký je atribút method v tagu form). A prímeš http odpoveď (v ktorej potom nájdeš to, čo potrebuješ).
Zdá sa mi, že Delphi má aj nejaké komponenty na prácu s http spojeniami (ale Delphi som používal naposledy pred niekoľkými rokmi, tak si už veľmi nepamätám).

// chrono: Tie http komponenty boli asi v nejakej Enterprise verzii
dik, skusim sa pozriet...nasiel som tam nejake http komponenty ale je tam dost komponent tykajucich sa internetu a neviem zistit co je naco... (pre uplnost... mam Delphi 7 Enterprise)

...ak by niekto vedel trocha konkretnejsie ze ktoru komponentu je naco dobre pouzit, tak by bolo fajn.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

4JOKE
Light Star
Light Star
Príspevky: 269
Registrovaný: 10 sep 2005, 10:23

Príspevok od používateľa 4JOKE »

audiotrack napísal:pozri sa napríklad sem: http://www.scalabium.com/faq/dct0139.htm
jj, to by malo fungovat ako poslanie tych udajov, este treba zistit ci boli spravne...
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Pripadá mi to príliš komplikované (načo otvárať ten obsah,čo sa stiahne, do okna, keď by stačilo skontrolovať, či tá odpoveď obsahuje nejaký reťazec, ktorý potvrdí, že sa podarilo prihlásiť). Ale keď nebude niečo jednoduchšie, tak čo už. :wink:

PS: Keď sa prihlásiš, mal by si sa aj odhlásiť (pre istotu).
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

4JOKE napísal:jj, to by malo fungovat ako poslanie tych udajov, este treba zistit ci boli spravne...
na to použiješ procedurú webbrowsera (môžeš ho skryť ak nechceš aby bol viditeľlný [webbrowser1.visible:=false;]) OnDocumentComplete. Dáš si zistiť url (webbrowser1.LocationURL) a máš to. Na základe nej urobíš čo potrebuješ.
4JOKE
Light Star
Light Star
Príspevky: 269
Registrovaný: 10 sep 2005, 10:23

Príspevok od používateľa 4JOKE »

audiotrack napísal:na to použiješ procedurú webbrowsera (môžeš ho skryť ak nechceš aby bol viditeľlný [webbrowser1.visible:=false;]) OnDocumentComplete. Dáš si zistiť url (webbrowser1.LocationURL) a máš to. Na základe nej urobíš čo potrebuješ.
xapem, xapem.... ten webbrowser som uz spojazdnil a ide to v poriadku...
...vdaka dost mi to pomohlo a ani to nieje moc komplikovane...

...inac tiez by ma zaujimalo ze ci sa to daj aj inym sposobom, nez aby sa do delphi nacitavala cela ta stranka...mohlo by to tym ist aj rychlejsie ci nie?
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Dalo by sa to tak, že pošleš POST žiadosť a z odpovede si načítaš iba http hlavičku a spojenie zatvoríš (ale to chce nejaký http komponent, snáď audiotrack niečo poradí). :)
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

chrono napísal:Dalo by sa to tak, že pošleš POST žiadosť a z odpovede si načítaš iba http hlavičku a spojenie zatvoríš (ale to chce nejaký http komponent, snáď audiotrack niečo poradí). :)
audiotrack pohladá :D
4JOKE
Light Star
Light Star
Príspevky: 269
Registrovaný: 10 sep 2005, 10:23

Príspevok od používateľa 4JOKE »

inac niektore php stranky maju pred lognutim aj po lognuti aj pri nespravnom lognuti tu istu URL...(snad ste ma poxopili) ...a to sa asi z hlavicky nevycita ci som lognuty ak je ta URL stale taka ista ci nie?
...potom by bolo snad lepsie sledovat cookies ci sa vytvorili...
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Pred nejakým časom tu niekto riešil podobný problém, a práve na to som ho upozorňoval (že sa url zmeniť nemusí, alebo sa v obidvoch prípadoch zmení na rovnakú hodnotu). Cookies sa ti pošlú v tej http hlavičke.
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

chrono napísal:Pred nejakým časom tu niekto riešil podobný problém, a práve na to som ho upozorňoval (že sa url zmeniť nemusí, alebo sa v obidvoch prípadoch zmení na rovnakú hodnotu). Cookies sa ti pošlú v tej http hlavičke.
alebo druhá možnosť: pozreť sa na zdroják stránky a nájsť v ňom nejaký jedinečný element. (napríklad reťazec <form name="login">, prípadne meno užívateľa ktoré slúži ako odkaz na profil, alebo tak..) Podľa toho viem zistiť či som prihálesný alebo nie.
Samozrejme ta hlavička je efektívnejšia, no niekedy je lepšie načítavať si aj stránku, trebárs iba v minimálnom skrytom webbrowseri.
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Nedá sa, aspoň, v tom browser komponente vypnúť načítavanie vložených objektov (obrázky, flash...)?
4JOKE
Light Star
Light Star
Príspevky: 269
Registrovaný: 10 sep 2005, 10:23

Príspevok od používateľa 4JOKE »

audiotrack napísal:alebo druhá možnosť: pozreť sa na zdroják stránky a nájsť v ňom nejaký jedinečný element. (napríklad reťazec <form name="login">, prípadne meno užívateľa ktoré slúži ako odkaz na profil, alebo tak..) Podľa toho viem zistiť či som prihálesný alebo nie.
Samozrejme ta hlavička je efektívnejšia, no niekedy je lepšie načítavať si aj stránku, trebárs iba v minimálnom skrytom webbrowseri.
jj, no ale pre ten jedinecny element by sa zas musela nacitat cela stranka... mno dajme tomu.. tak ako by som v tom zdrojovom kode mohol prehladavat cez delphi???
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Re: Delphi a kontrola web linku

Príspevok od používateľa audiotrack »

4JOKE napísal:...potreboval by som si v Delphi nakodit nieco ako link checker...
...jednoducho ze by som si v nom dal meno a heslo napr. na post.sk a on by mi vypisal ze to meno heslo je spravne (teda asi budem kontrolovat stranku na ktoru to presmerovalo) ...

...potreboval by som aspon tak strucne co mam hladat na internete alebo cim zistit stranku cez delphi na ktoru to presmeruje po nalogovani... pretoze internetove aplikacie som este vobec neskusal robit v Delphi...

...thnx
neviem ako je to na post.sk lebo tam nemám účet, ale určite nemá adresa na ktorú sa dostaneš po zadaní správnych údajov rovnaký tvar ako adresa na ktorej sa prihlasuješ. Tu som ti spravil ukážku takého checkera účtov na pokec. Máš aj komentáre v zdrojákoch, tak si to pozri ako som to robil. Na posielanie tých postov som použil to na čo som ti dával ten link. Iba si tam prepíš adresu toho formu kde sa prihlasuješ a v zdrojáku stránky si zisti ako sa volajú inputy pre meno a heslo a tiež si to uprav
Prílohy
zdroj (txt).rar
zdroják v txt pre tých čo nemajú delphi ale vedia v tom robiť (možno ich niečo napadne ako to vylepšiť)
(1.29 KiB) 85 stiahnutí
exe.rar
(184.93 KiB) 72 stiahnutí
zdroják.rar
(8.94 KiB) 85 stiahnutí
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Keď už dávaš x-www-form-urlencoded, mal by si aj upraviť niektoré znaky :) Alebo sa o to postará ten komponent?
The form-urlencoded Media Type

// chrono: a aj na kopírovanie PChar reťazca je asi nejaká funkcia :)
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

chrono napísal:Keď už dávaš x-www-form-urlencoded, mal by si aj upraviť niektoré znaky :) Alebo sa o to postará ten komponent?
The form-urlencoded Media Type
to je pre didaktické účely, ja som to neposielal na zverejnenie vo freesofte. Iba som mu chcel ukázať spôsob. Nech si to už ošetrí akými podmienkami chce :wink:
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

audiotrack: veď hej (ja len aby tu potom nebola otázka, prečo to nefunguje keď je v prihlasovacom mene napr. medzera) :wink:
4JOKE: niektoré znaky budeš musieť posielať v zakódovanej forme (pozri ten link čo som poslal) Napr. medzera bude + alebo %20.
4JOKE
Light Star
Light Star
Príspevky: 269
Registrovaný: 10 sep 2005, 10:23

Príspevok od používateľa 4JOKE »

pozrel som si tie zdrojaky... ono nieco podobne som mal aj spravene ale i tak dik zas snahu... inac nechapem co a naco davas do PostData a ci musim nieco vkladat aj do toho headeru alebo to pojde aj bez toho?

...inac co sa tyka toho post.sk ,tak o to nejde ze sa tam meni ta URL...to bol len ako priklad... islo o to aby som vedel spravit ten checker aj vseobecne keby sa ta URL nahodou niekde nemenila...

...inac zevraj by sa ten moj problem dal vyriesit aj pomocou tychto komponentov, no skusim sa z toho vysomarit:
http://synapse.ararat.cz/
http://www.indyproject.org
Napísať odpoveď