Registration im Web mit Java-Programm durchführen

C

Caramel22

Gast
Guten Abend.

Über welches Stichwort muss ich mich informieren, wenn ich ein Programm schreiben will, dass den Benutzer nach z.B. Username und Passwort abfragt und diese dann an z.B. web.de sendet und dort die Registration für einen Email-Account abschließt.

Also wie kann ich das Formular mit Java ausfüllen?
Unteranderem müsste man Radiobuttons für z.B. Herr oder Frau setzen können.
Interessant wäre noch, wie ich das Captcha in dem Java-Programm anzeigen kann.

Ich hoffe ihr könnt mir helfen :)
Vielen Dank.
 
A

AntiCaptcha

Gast
An sich brauchst du nur die Klasse [japi]URL[/japi] und ein paar deren Methoden und die dadurch verwendeten Klassen um das zu realisieren. Denn das "ausfüllen eines Formulares" wirde dir nicht viel helfen wenn du dann immer noch nicht weist wie du diese Daten dann richtig an den Webserver sendest. Also solltest du dich auch mit Hypertext Transfer Protocol ? Wikipedia befassen. Dort ist unteranderem auch HTTP POST erklärt. Zum Captcha : du müsstest vorher die Seite laden die das Captcha enthält und dann alle Session-Daten zwischenspeichern damit du dem Server auch klar machen kannst das deine zweite Anfrage zu diesem Captcha gehört. Ist aber alles in allem nicht wirklich schwer.

Wovon ich dir allerdings abraten würde wäre das Anwenden einer solchen App bei größeren Providern. Kann nämlich dazu führen das (vorrausgesetzt du schaffst es den Account erfolgreich zu erstellen) später gesperrt wirst da erkannt wurde das ein Bot genutzt wurde.


Fazit : ist zwar alles möglich, aber der Nutzen ist sehr gering und die meisten Website-Betreiber haben mitlerweile gute Schutzmechanismen gegen sowas. Lass es lieber. Du wirst mit dem Ergebnis nicht zu frieden sein und dich nur über verschwendete Zeit ärgern (da du ja scheinbar die nötigen Grundlagen nicht kennst).
 
C

Caramel22

Gast
Vielen Dank für deine Antwort AntiCaptcha.

Formulare kann ich nun mithilfe von htmlunit ausfüllen.
Nun bin ich bei den Captchas hängen geblieben. Ich würde das Ganze, wenn möglich, auch mit htmlunit bewältigen.

Mein Problem ist, dass sich die id der Captchas jedes mal ändert. Wie komme ich mithilfe von htmlunit an die id?

PS:
Ich wüsste nich warum der Account gesperrt werden sollte.
Ob ich nun alles in Firefox ausfülle oder in meinem Programm.. sollte aufs Gleiche hinauslaufen.

Danke.
 

MarderFahrer

Gesperrter Benutzer
PS:
Ich wüsste nich warum der Account gesperrt werden sollte.
Ob ich nun alles in Firefox ausfülle oder in meinem Programm.. sollte aufs Gleiche hinauslaufen.

Danke.

Nun, technisch ist das vielleicht richtig. Es läuft aufs selbe raus. Aber komplett betrachtet könnte sich ein Service Provider wie Web.de darüber erzürnen, falls sie merken, dass der Account eben nicht über einen Browser wie Firefox angelegt wurde, sondern offenbar von einem Automat angelegt wurde.

Ich nehme mal an, sowas kann man über den User-Agent feststellen. Oder daran, dass zwischen aufrufen des Formulars und abschicken nur Microsekunden liegen, was kein Mensch so schnell schaffen würde.

Und das ein Service etwas gegen "Bots" haben könnte lässt sich spätestens daran feststellen, dass sie Captchas einsetzen. Gerade die sollen ja verhindern, dass ein Automat das Formular absenden kann.

Wenn ein Service nichts gegen externe Programme hat, dann bieten sie in der Regel direkt API's an mit denen sich Programme schreiben lassen. Siehe Anbieter wie Dropbox/Facebook/Twitter o.Ä.
 
C

Caramel22

Gast
dass zwischen aufrufen des Formulars und abschicken nur Microsekunden liegen

Ich glaube du bzw. Ihr habt nicht verstanden, was ich machen will.
Ich will keinen Bot programmieren.
Die ganzen Felder Name, Straße, Alter, Passwort etc. müssen in meinem Programm ausgefüllt werden und das Captcha natürlich auch.
Mein Problem ist, wie ich die Captchas in meinem Programm anzeigen kann.
Am liebsten würde ich es mit htmlunit machen, jedoch ändert sich die id der Captchas immer.

Habt ihr einen Rat?
 

MarderFahrer

Gesperrter Benutzer
Doch, verstanden habe ich das schon. Zum Problem selbst habe ich leider keinen Rat, wollte lediglich erklären warum ein so erstellter Account evtl. gelöscht werden kann.

Auch wenn die Daten in deinem Tool von Hand eingetragen werden, so werden sie dennoch beim übermitteln an web.de im microsekunden Bereich ankommen bzw. verarbeitet werden.

Und aus Sicht von Web.de ist das nun mal ein Bot, der "automatisch" ihr Formular ausfüllt und abschickt.
Dass dein Tool sich die Daten nicht selbst ausdenkt, sondern die Eingaben von einem User kommen, kann web.de ja schlecht feststellen. Für die ist es nur eine Konto Erstellung welche ihr Formular in x ms aufgerufen, ausgefüllt und abgeschickt hat.
 
A

AntiCaptcha

Gast
Zeil 473 : "<label id="XXXX" ...> ..."
Diese ändert sich bei jedem Refresh der Seite. Für den Browser ist das erstmal nicht weiter schlimm, dieser zeigt erstmal alles nur an, was die ID angeht und was da noch an AJAX und vor allem an Server-Code dranhängt hat diesen nicht zu interessieren. Und genau so etwas ist schon mal eine kleine Hürde womit Frameworks wie HTMLUnit überhaupt nicht klar kommen. Ich hätte dafür sicher 1 oder 2 Tricks auf Lager um es doch mit HTMLUnit zu schaffen OHNE mir da selbst was schreiben zu müssen, aber diese werde ich jetzt hier mal nicht posten.

Zur Erklärung von MarderFahrer hätte ich noch ne Anmerkung :
es geht nicht unbedingt darum das der "Bot" die Seite läd, ausfüllt und dann sofort wieder sendet. So wie ich es verstanden habe wird schon das verhalten eines Browsers nachgeahmt : laden der Seite und Darstellung im Bot, Ausfüllen durch User und dann erst senden. Das Argument mit "in X ms ausgefüllt" ist hier also etwas unpassend. Was aber z.B. Web.de definitiv mitbekommen wird ist der Fakt das so ein Browser ja noch mehr macht als nur mal eben das HTML dieser einen Seite zu laden : andere Bilder laden, JavaScript-Code ausführen, weitere Anfragen, Session- und Cookie-Verwaltung, ggf aktive Inhalte (Flash, Java-Applet) ... und das alles mit Java nachzuahmen wird alleine mit HTMLUnit sicher NICHT möglich sein. Und ich bin mir sicher das Web.de schon in einger gewissen Weise auf so etwas achten wird. Und genau damit verrät sich das Programm, eben weil diese ganzen Anfragen und Code-Ausführungen die ein Browser normalerweise macht erstmal richtig implementiert werden müssen. Und da ist es völlig egal ob die Daten von nem User per Hand eingetippt werden oder ob du dir sogar die Mühe machst einen Anti-Captcha-Code zu schreiben (bei aktuellen Captchas von Web.de schon eine etwas größere Aufgabe, aber sauber implementiert würde es schneller geknackt werden als es ein Mensch überhaupt lesen könnte) : Fakt ist das sich nachweisen lässt das die Registration eben NICHT über einen aktuellen Standard-Browser ablief sondern über ein anderes Programm, welches Web.de seinerseits als "Angriff durch Bot" werten könnte und dadurch das Konto sperren oder sogar löschen könnte.


Und aus diesem Grund ist es eigentlich wenig hilfreich wenn wir dir da weiterhelfen da du mit dem Ergebnis nicht wirklich Freude haben wirst.
Ob es überhaupt möglich wäre mit Java soweit einen Browser nachzuahmen das man damit "unauffällig" eine Registration bei nem E-Mail-Provider absetzen könnte ... hmm ... vielleicht, aber der Aufwand für einen unerfahrenen Entwickler, (und sorry, nimm das bitte nicht böse oder beleidigend sondern nur als Feststellung) der du (zumindest auf diesem Gebiet) zu sein scheinst, ist in kein sinnvolles Verhältnis zum Nutzen zu bringen. Oder einfach ausgedrückt : um die "Aufgabe" zu erfüllen würdest du ewig und 3 Tage sitzen und doch zu keinem Ergebnis kommen.

Ich will dich nicht unbedingt entmutigen, dir aber lediglich aufzeigen das es nicht wirklich einen Sinn hat wenn du gleich mit sowas anfängst nur um mal ein bisschen mit java.net.* und darauf laufenden Frameworks rumzuspielen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
OnDemand Java Deployment Vaadin Allgemeine Java-Themen 3
D Hat Java eine Library um JavaScript auszuwerten? Allgemeine Java-Themen 2
Zrebna Wieso sind eigentlich JUnit-Tests in src/test/java platziert - nur Konvention? Allgemeine Java-Themen 7
N LlaMA, KI, java-llama.cpp Allgemeine Java-Themen 39
V Java-Codierungsherausforderung: Navigieren durch die Macken der Datumsmanipulation Allgemeine Java-Themen 2
E Output Fehler (Java-Programm Kuchen) Allgemeine Java-Themen 11
M java: unexpected type Allgemeine Java-Themen 2
harrytut Java Input/Output Tests Junit Allgemeine Java-Themen 3
B Java Discord bot auf ein Root Server? Allgemeine Java-Themen 1
BetziTheRealOne Java PKIX path building failed as non Admin Allgemeine Java-Themen 15
D Linux, Java-Version wird nicht erkannt bzw. welche Einstellung fehlt noch? Allgemeine Java-Themen 19
KonradN Java 21 Release Allgemeine Java-Themen 5
V Umgang mit fehlenden Daten in einer Java-Datenanalyseanwendung Allgemeine Java-Themen 5
P Fehler: Hauptklasse Main konnte nicht gefunden oder geladen werden Ursache: java.lang.ClassNotFoundException: Main Allgemeine Java-Themen 24
K Java Anwendung machen Anleitung Allgemeine Java-Themen 5
G java.io.listFiles() Allgemeine Java-Themen 3
8u3631984 Frage zu Java Streams min / max Allgemeine Java-Themen 17
S Java Programm lässt sich vom USB-Stick starten, aber nicht von HDD Allgemeine Java-Themen 16
K Java-Projekt Allgemeine Java-Themen 11
K Java-Projekt Allgemeine Java-Themen 0
ruutaiokwu Welcher Browser unterstützt heutzutage noch Java Applets? Allgemeine Java-Themen 5
Jose05 Java-Klasse im extra cmd-Fenster ausführen Allgemeine Java-Themen 3
rode45e Java Threads Allgemeine Java-Themen 4
G java.io.listFiles() Allgemeine Java-Themen 2
N Java Dynamic Proxy Allgemeine Java-Themen 3
N Leichte Java Gegner Ki Allgemeine Java-Themen 10
A Java modul Problem Allgemeine Java-Themen 4
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
V Funktionale Schnittstelle in Java Allgemeine Java-Themen 3
OnDemand Java String in Hashmap als Key NULL Allgemeine Java-Themen 27
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
berserkerdq2 Wenn ich bei Intelij javafx mit maven importieren will, muss ich das in die pom.xml reintun, aber warum noch in module-info.java? Allgemeine Java-Themen 3
KonradN Java 20 am 21. März Allgemeine Java-Themen 1
O Java Website Stock Bot Allgemeine Java-Themen 3
J Front-/Backend in Java Allgemeine Java-Themen 14
doopexxx JAVA Google Webcrawler Allgemeine Java-Themen 1
J JavaScript innerhalb eines Java Projekts ausführen Allgemeine Java-Themen 2
A Java Programm erstellen hilfe Allgemeine Java-Themen 10
G java.lang.NoClassDefFoundError: org/aspectj/lang/Signature Allgemeine Java-Themen 2
lalex1491 Java Aktienkurse nachfragen Allgemeine Java-Themen 4
J Class to link Java Allgemeine Java-Themen 4
V Wie funktioniert das Schlüsselwort "final" von Java? Allgemeine Java-Themen 19
mrStudent Inferenz JAVA Allgemeine Java-Themen 6
U URI Rechner (Java Script) Allgemeine Java-Themen 7
TheSkyRider Java Geburtsdatum Textfeld Allgemeine Java-Themen 7
mihe7 Java 19 JavaDocs: Browserintegration Allgemeine Java-Themen 0
Encera Gleichzeitiges Ausführen und verbinden von 2 Java-Klassen über die Eingabeaufforderung und Eclipse Allgemeine Java-Themen 21
H Java Rechner Programmierung der Mathematik Allgemeine Java-Themen 33
Lennox Schinkel Java Kara Auf einen Java Host laufen lassen Allgemeine Java-Themen 17
C Fußnoten von DocX mit Java Allgemeine Java-Themen 2
C Fußnoten in DocX mit Java Allgemeine Java-Themen 1
M Aussagenlogik in Java Programmieren Allgemeine Java-Themen 22
B Per Java Word Dokument schreiben? Allgemeine Java-Themen 8
krgewb Java-Bibliothek für ONVIF Allgemeine Java-Themen 1
KonradN Oracle übergibt (Java Teile der) GraalVM Community Edition an OpenJDK Community Allgemeine Java-Themen 2
Momo16 Brauche Hilfe - Java Projekt kann nicht erstellt werden Allgemeine Java-Themen 12
B Java mit command line und jars benutzen? Allgemeine Java-Themen 18
M Java Überprüfen ob .exe-Datei bereits ausgeführt wird Allgemeine Java-Themen 2
B HTTP Allgemeine Fragen über Suchmaschine nutzen mit Java Allgemeine Java-Themen 20
Mick P. F. Wie kriege ich die Fehlermeldung "java: symbol lookup error: ..." weg? Allgemeine Java-Themen 11
K Nachhilfe Java Allgemeine Java-Themen 11
KonradN Java 19 Allgemeine Java-Themen 11
F IDEA IntelliJ Java Songliste erstellen Allgemeine Java-Themen 6
TheSepp Java bestimmtes Array auf den Wert 0 setzen Allgemeine Java-Themen 32
B Java Reflection Probleme beim wehcselseitigen Referenzieren zweier Klassen/Objekte Allgemeine Java-Themen 14
Sachinbhatt Sind alle Methoden in Java implizit virtuell Allgemeine Java-Themen 2
E Java und integrierte Grafikkarten Allgemeine Java-Themen 18
Sachinbhatt Wie wird die Typumwandlung bei Mehrfachvererbung in Java implementiert? Allgemeine Java-Themen 3
Peterw73 Hilfe bei Java gesucht Allgemeine Java-Themen 3
A Java unter Win 10 Allgemeine Java-Themen 1
B Woher kommen die Bildschirmkoordinaten beim java Robot? Allgemeine Java-Themen 14
P9cman java.Lang Klassen fehlen in JRE System Library Allgemeine Java-Themen 1
T Java Robot Class - Bot Allgemeine Java-Themen 3
E Wie Java Heap Space vergrößern? Allgemeine Java-Themen 3
B Java Programm auf virutellem Desktop laufen lassen? Allgemeine Java-Themen 1
D VBA Code mit Java ausführen möglich? Allgemeine Java-Themen 10
berserkerdq2 Threads, wie genau läuft das in Java ab? (Ich kann Threads erstellen und nutzen, nur das Verständnis) Allgemeine Java-Themen 6
izoards Java Home Pfad unabhängig von der Version Allgemeine Java-Themen 7
N JAVA-Code mit Grafikfenster zeichnet in Windows, aber nicht Mac. Allgemeine Java-Themen 4
L Java überprüfen lassen, ob sich ein gegebener Pfad / das Programm an sich auf einer CD oder Festplatte befindet Allgemeine Java-Themen 14
KonradN CVE-2022-21449: Fehler in Java bei Signaturprüfung Allgemeine Java-Themen 20
berserkerdq2 Java sql Allgemeine Java-Themen 15
JordenJost Unverständlicher Java code? Allgemeine Java-Themen 21
LimDul XSD To Java - Überschreiben von Assoziationen Allgemeine Java-Themen 1
Aartiyadav Comparisons and Swapa in Bubble-sort Java Allgemeine Java-Themen 6
KonradN Java 18 Allgemeine Java-Themen 8
N Statistische Auswertung von Logfiles (Einlesen, auswerten und grafische Aufbereitung von logfiles) mit Java Allgemeine Java-Themen 9
ME2002 Fragen aus einer Java Klausur Allgemeine Java-Themen 67
Z Mit Java 8+ Streams Zeilen nummern zu Zeilen hinzufügen Allgemeine Java-Themen 17
M Verständnisfrage java.util.TimerTask Allgemeine Java-Themen 2
V Hilfe mit Java Code Allgemeine Java-Themen 4
S Processing Java Code verstehen Allgemeine Java-Themen 4
O Newton Algorithmus Java Allgemeine Java-Themen 1
P Java Quellen finden Allgemeine Java-Themen 3
M Java Analyse/ SWOT-Analyse Allgemeine Java-Themen 13
J c Programm läuft nicht in compilierter Version des Java Projektes Allgemeine Java-Themen 7
Atten007 Java-Klasse auf macOS entpacken? Allgemeine Java-Themen 2
E java mithilfe url .jar datei öffnen Allgemeine Java-Themen 9
M Warum hat Java dieses und jenes nicht... Allgemeine Java-Themen 8
E Java .exe Datei mit args starten Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben