| |||||||
Das Thema "Bitte Hilfe: Anmeldung Kennwort geschuetzte Webseite.." befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer Benutzer Registriert seit: 18.09.2011
Beiträge: 10
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
| Ich moechte mich gerne an der Webseite von meinen Handy provider Inloggen MijnKPN - beheer uw KPN diensten einloggen, um danach auslesen zu koennen was mein Restgutenhaben meines Bundles ist. Dies soll in meiner App angegeben werden. Problem ist dass diese Seite kein php benutzt aber eine xml code, wenn Ich das gut gesehen habe. Auch nutzt Sie "https" https://access.kpn.com/CAUT/AuthenticationServlet Jetzt habe Ich schon folgende Codes gefunden wovan Ich nicht weiss ob diese zu gebrauchen sind fuer mein Vorhaben. Set up an HTTP/HTTPS client: Code: public DefaultHttpClient getClient() {
DefaultHttpClient ret = null;
//sets up parameters
HttpParams params = new BasicHttpParams();
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
HttpProtocolParams.setContentCharset(params, "utf-8");
params.setBooleanParameter("http.protocol.expect-continue", false);
//registers schemes for both http and https
SchemeRegistry registry = new SchemeRegistry();
registry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
final SSLSocketFactory sslSocketFactory = SSLSocketFactory.getSocketFactory();
sslSocketFactory.setHostnameVerifier(SSLSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER);
registry.register(new Scheme("https", sslSocketFactory, 443));
ThreadSafeClientConnManager manager = new ThreadSafeClientConnManager(params, registry);
ret = new DefaultHttpClient(manager, params);
return ret;
} Code: public static String getResponseBody(HttpResponse response) {
String response_text = null;
HttpEntity entity = null;
try {
entity = response.getEntity();
response_text = _getResponseBody(entity);
} catch (ParseException e) {
e.printStackTrace();
} catch (IOException e) {
if (entity != null) {
try {
entity.consumeContent();
} catch (IOException e1) {
}
}
}
return response_text;
} Code: public class OptionScraper {
// example XPATH queries in the form of strings - will be used later
private static final String NAME_XPATH = "//div[@class='yfi_quote']/div[@class='hd']/h2";
private static final String TIME_XPATH = "//table[@id='time_table']/tbody/tr/td[@class='yfnc_tabledata1']";
private static final String PRICE_XPATH = "//table[@id='price_table']//tr//span";
// TagNode object, its use will come in later
private static TagNode node;
// a method that helps me retrieve the stock option's data based off the name (i.e. GOUAA is one of Google's stock options)
public static Option getOptionFromName(String name) throws XPatherException, ParserConfigurationException,SAXException, IOException, XPatherException {
// the URL whose HTML I want to retrieve and parse
String option_url = "http://finance.yahoo.com/q?s=" + name.toUpperCase();
// this is where the HtmlCleaner comes in, I initialize it here
HtmlCleaner cleaner = new HtmlCleaner();
CleanerProperties props = cleaner.getProperties();
props.setAllowHtmlInsideAttributes(true);
props.setAllowMultiWordAttributes(true);
props.setRecognizeUnicodeChars(true);
props.setOmitComments(true);
// open a connection to the desired URL
URL url = new URL(option_url);
URLConnection conn = url.openConnection();
//use the cleaner to "clean" the HTML and return it as a TagNode object
node = cleaner.clean(new InputStreamReader(conn.getInputStream()));
// once the HTML is cleaned, then you can run your XPATH expressions on the node, which will then return an array of TagNode objects (these are returned as Objects but get casted below)
Object[] info_nodes = node.evaluateXPath(NAME_XPATH);
Object[] time_nodes = node.evaluateXPath(TIME_XPATH);
Object[] price_nodes = node.evaluateXPath(PRICE_XPATH);
// here I just do a simple check to make sure that my XPATH was correct and that an actual node(s) was returned
if (info_nodes.length > 0) {
// casted to a TagNode
TagNode info_node = (TagNode) info_nodes[0];
// how to retrieve the contents as a string
String info = info_node.getChildren().iterator().next().toString().trim();
// some method that processes the string of information (in my case, this was the stock quote, etc)
processInfoNode(o, info);
}
if (time_nodes.length > 0) {
TagNode time_node = (TagNode) time_nodes[0];
String date = time_node.getChildren().iterator().next().toString().trim();
// date returned in 15-Jan-10 format, so this is some method I wrote to just parse that string into the format that I use
processDateNode(o, date);
}
if (price_nodes.length > 0) {
TagNode price_node = (TagNode) price_nodes[0];
double price = Double.parseDouble(price_node.getChildren().iterator().next().toString().trim());
o.setPremium(price);
}
return o;
}
} Wenn Ich es schon hinkriegen koennte mich ueber meiner App einzuloggen, waere schon Klasse. PS: Ich benutze Eclipse Indigo.. Vielen Dank im voraus. Gruss, Lucius |
| | |
| | #2 (permalink) |
| Neuer Benutzer Registriert seit: 18.09.2011
Beiträge: 10
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Guten Morgen, 85 views und noch kein Tip ![]() Koennte bitte jemand mal wenigstens einen Ansatz geben, wie Ich dies machen koennte? Wie gesagt wenn das Einloggen schon mal klappt, das waere schon ein ganzer Schritt. Mir wurde dieses Forum empfohlen, da mann hieranscheinend gut geholfen wird. Danke euch. Gruss, Lucius |
| | |
| | #4 (permalink) |
| Neuer Benutzer Registriert seit: 18.09.2011
Beiträge: 10
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Hi Sixi, Erstmal danke fuer den Google Tip, einsiges Problem die Webseite auf die Ich mich einloggen moechte benuetzt die method=post und nicht get. Kann man die HTTP authentication trotsdem gebrauchen? Danke im voraus, Lucius |
| | |
| | #5 (permalink) |
| Erfahrener Benutzer Modell: G1 DevPhone / SGS2 / SGT10.1v Registriert seit: 20.01.2009
Beiträge: 238
Abgegebene Danke: 7
Erhielt 50 Danke für 47 Beiträge
|
Also googlest du nach "android http post example" und findest z.B. dies hier - vielleicht sollte mal jemand 'nen google-tutorial schreiben |
| | |
| | #6 (permalink) |
| Neuer Benutzer Registriert seit: 18.09.2011
Beiträge: 10
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Hallo Leute/Sixi, Bin jetzt schon ertwas weiter, Ich habe ueber dem Firebug rausgefunden das 3 Parameter "usr_name" und "usr_password" ubergeben werden beim Post. Der Parameter "swfrmsig", scheint aber verschluesselt zu sein Code: 85647ghgg56khgi874637ftdyt Code: usr_name=meinuser&usr_password=meinpass&swfrmsig=85647ghgg56khgi874637ftdyt Kann mir bitte Jemand weiterhelfen? Schonmal veieln Dank fuer eure Hilfe. Mein Code: Code: try {
|
| | |
| | #7 (permalink) | |
| Android Experte Registriert seit: 05.02.2010
Beiträge: 609
Abgegebene Danke: 75
Erhielt 136 Danke für 119 Beiträge
| Zitat:
Da musst du wohl den Betreiber der Seite fragen, was er denn da haben will.
__________________ Kein Support via PN/eMail. Bitte das Forum benutzen - dort haben alle etwas davon. Bei Entwicklerfragen zu abstürzenden Apps bitte immer die Ausgabe von LogCat posten. Tipp: Zum "Danke" sagen gibt es einen Button. ![]() | |
| | |
| | #8 (permalink) |
| Neuer Benutzer Registriert seit: 18.09.2011
Beiträge: 10
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Hi, Der Parameter "swfrmsig" ist aber Einzigartig schon bevor Ich mich an der Seite einlogge. Der Parameter steht in den Sourcecode der Homepage. Ich muss nen Weg finden den abzugleichen mit dem HttpPost, die Post muss naemlich 3 Parameter enthalten, usr_name, usr_password und die swfrmsig Variable. Jemand eine Idee? Danke im voraus. Gruss, Lucius |
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| HTC Sense - Bitte überprüfen sie E-Mail-Adresse und Kennwort... | sgehdn | HTC Incredible S Forum | 5 | 07.07.2011 20:18 |
| Bitte , bitte um Hilfe - nach update funkt. Handy nicht mehr | marco 124 | Samsung Galaxy (I7500) Forum | 7 | 19.05.2010 16:53 |
| Danke-Button in Android-Hilfe.de-App und mobiler Webseite | schupfer | Anregungen | 3 | 27.03.2010 15:12 |
| Google Benutzername / Kennwort - *Hilfe* | wetzi | HTC Magic Forum | 23 | 14.06.2009 21:54 |
| Google G1 Anmeldung??!!! BITTE UM HiLFE! | M.A.X | T-Mobile G1 Forum | 9 | 26.05.2009 22:58 |