Forum » Programiranje » [Java]Dostop do webpage-a preko user/pass interfacea
[Java]Dostop do webpage-a preko user/pass interfacea
nicnevem ::
Bi mi znal kdo dati kak nasvet za naslednji problem:
Dostopati želim do neke strani, do katere pridem z vpisom username/passworda + klik "Go" na tejle strani, ter nato še z izpolnitvijo nekih
podatkov v analogna polja (ki se pojavijo za prvotno stranjo) + še en klik na button.
S te končne strani naj bi nato sparsal določene informacije.
Malo sm si za začetek pomagal s spodnjo kodo:
-------------------------------------------------------------------
-------------------------------------------------------------------
Vse lepo in prav, dokler ne pridem do con.setRequestProperty(...). Kaj naj bi to sploh pomenilo? Kaj v zvezi s "krmiljenjem" skripte*,
v katero vpisujemo info? Sploh mi ni jasno na kak način naj v posamezno okence napišem potrebne informacije, ter "kliknem" gumb.
Se je slučajno že kdo ubadal s podobnim problemom?
-------------------------------------------------------------------
* Če se ne motim, tale reč predstavlja tisti dve okenci, za user/pass. Zgornja koda sicer ni narejena za filanje infota v tisti 2
okni (no, saj je tako ali tako jasno), vendar se mi dozdeva da moram z RequestProperty na nek podoben način
pripraviti program da mi bo vstavil user/pass - v njem moram uporabiti neke informacije iz te skripte...hm..pomoje da.
Samo kako, in kaj sploh?
Dostopati želim do neke strani, do katere pridem z vpisom username/passworda + klik "Go" na tejle strani, ter nato še z izpolnitvijo nekih
podatkov v analogna polja (ki se pojavijo za prvotno stranjo) + še en klik na button.
S te končne strani naj bi nato sparsal določene informacije.
Malo sm si za začetek pomagal s spodnjo kodo:
-------------------------------------------------------------------
import java.net.*; import java.io.*; public class URLPost { public static void main(String args[]) { try { String surl = args[0]; URL url = new URL(surl); URLConnection con = url.openConnection(); con.setDoInput(true); con.setDoOutput(true); con.setUseCaches(false); String msg = "Hi HTTP SERVER! Just a quick hello!"; con.setRequestProperty("CONTENT_LENGTH", "" + msg.length()); //Getting an output stream... OutputStream os = con.getOutputStream(); OutputStreamWriter osw = new OutputStreamWriter(os); osw.write(msg); osw.flush(); osw.close(); // .... } catch (Throwable t) { t.printStackTrace(); } } }
-------------------------------------------------------------------
Vse lepo in prav, dokler ne pridem do con.setRequestProperty(...). Kaj naj bi to sploh pomenilo? Kaj v zvezi s "krmiljenjem" skripte*,
v katero vpisujemo info? Sploh mi ni jasno na kak način naj v posamezno okence napišem potrebne informacije, ter "kliknem" gumb.
Se je slučajno že kdo ubadal s podobnim problemom?
-------------------------------------------------------------------
* Če se ne motim, tale reč predstavlja tisti dve okenci, za user/pass. Zgornja koda sicer ni narejena za filanje infota v tisti 2
okni (no, saj je tako ali tako jasno), vendar se mi dozdeva da moram z RequestProperty na nek podoben način
pripraviti program da mi bo vstavil user/pass - v njem moram uporabiti neke informacije iz te skripte...hm..pomoje da.
Samo kako, in kaj sploh?
<script language="JavaScript" type="text/JavaScript"> <!-- function bestaetige(text) { return(confirm(text)); } function AdrInfo(Adresse) { window.open('/eess01TC6S9ED8QF26QZF7AN7QLBQ44FLS8Rssee/index.jsp/ADR_INFO?ADR=' + Adresse,'ADRINFO','resizable=yes,width=480,height=180,left=10,top=10,scrollbars=auto'); return(false); } // --> </script>
Tutankhamun ::
Tist con.setRequestProperty pomoje ni nč posebnga. Ampak ko se prklopš na server, ga probaš pozdravt, zravn pa še doda dolžino tega stringa, da server ve kok more prebrt.
Drgač jest sm ko sm kej podobnga delu, sm si zmeri srvrček naredu, pa simuliru tapravga kao, da sm vidu kaj mi client pošilja.(tko sm ugotavlu, mal zamudno )
Drgač jest sm ko sm kej podobnga delu, sm si zmeri srvrček naredu, pa simuliru tapravga kao, da sm vidu kaj mi client pošilja.(tko sm ugotavlu, mal zamudno )
AMD Phenom QUAD 9950 Black Edition, 8GB
kopernik ::
Najprej pogledaš source tiste html strani, kjer opaziš naslednje:
Na naslov "https://www.exite.at/eess01K62EB6SED36L... je potrebno z metodo "POST" poslati naslednje parametre:
* s=LOGIN
* USR=uporabnisko_ime
* PWD=geslo
* submit_Login=GO
Namesto URLConnection uporabi HttpsURLConnection, ker imaš SSL protokol. Malo poguglaj za kak primer, kako se v javi ravna pri https povezavah in kako se naredi POST. Če ne bo šlo, povej, in ti bomo dodatno pomagali ...
Aja, btw., setRequestProperty je namenjen nastavljanju headerjev in ne vsebine.
Na naslov "https://www.exite.at/eess01K62EB6SED36L... je potrebno z metodo "POST" poslati naslednje parametre:
* s=LOGIN
* USR=uporabnisko_ime
* PWD=geslo
* submit_Login=GO
Namesto URLConnection uporabi HttpsURLConnection, ker imaš SSL protokol. Malo poguglaj za kak primer, kako se v javi ravna pri https povezavah in kako se naredi POST. Če ne bo šlo, povej, in ti bomo dodatno pomagali ...
Aja, btw., setRequestProperty je namenjen nastavljanju headerjev in ne vsebine.
Zgodovina sprememb…
- spremenil: kopernik ()
nicnevem ::
Hvala lepa, obema.
No, google torej, in veselo na delo...(pa upam da se ne bo tako kmal zataknlo)
No, google torej, in veselo na delo...(pa upam da se ne bo tako kmal zataknlo)
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Davčne blagajne (strani: 1 2 3 4 … 24 25 26 27 )Oddelek: Programiranje | 331481 (71484) | Macketina |
» | [JAVA] HTTPS clientOddelek: Programiranje | 3167 (1897) | peterv6i |
» | [JAVA] zaustavitev niti (threadov)Oddelek: Programiranje | 3165 (3165) | morbo |
» | [Java]Brane spletne strani preko httpsOddelek: Programiranje | 2126 (1945) | CWIZO |
» | [java] Runtime.exec()Oddelek: Programiranje | 1874 (1747) | borchi |