Socket connecten

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
Userpet
User
Beiträge: 1
Registriert: Dienstag 28. Mai 2019, 13:31

Hey Leute!
Bin noch super neu in Python, also seit bitte nicht zu hart^^

Vor ein paar Tagen wollte ich mir mal Python anschauen. Da ich solche Dinge lieber mit Büchern statt mit Videos mache, ging ich also auf die Website unserer örtlichen Bibliothek und habe nach "Python lernen" gesucht. Dabei kam ein Ebook als vorschlag, das sehr interessant schien. Darum lud ich es mir runter, und habe angefangen.
In Kapitel 1 des Buches "Python Hacking" von einem Mann namens TJ O'Connor geht es um die Grundlagen. Einige Beispiele waren etwas wirr für mich, da es halt um Dinge ging wie FreeFloat FTP Server. Davon habe ich nicht viel Ahnung, aber ich möchte es mir halt mal anschauen, besonders, weil dabei direkt Dinge wie try und def erklärt werden. Das einzige was ich weiß, und auch schon vorher wusste, war, das FTP für File Transfer Protocoll steht. Dennoch habe ich keine Ahnung^^
Aber mein erstes richtiges Problem fing bei dem Punkt 1.3.4, den Dictionaries (https://imgur.com/a/epu9tfh) an.
Ich hatte keine Ahnung, was genau es mit ftp, ssh, smtp und http und deren Werten auf sich hat. Zum Beispiel hat der Schlüssel 'ftp' den Wert 21, der in meinem eigentlichen Problem gleich als Port benutzt wird. Keine Ahnung warum^^
Jetzt zum eigentlichen Problem. Dabei geht es um den Punkt 1.3.5, Netzwerkverbndungen (dieser fängt im unteren Teil des letzten Bildes an und geht bei https://imgur.com/a/iRWzaPB weiter)
Ich habe zuerst alles exakt wie im Buche geschrieben abgetippt. Dabei kam folgende Fehlermeldung: https://imgur.com/a/Bmw7efL
Ich habe mich auch im Internet erkundigt, habe verschiedene Dinge ausprobiert. Zum Beispiel mit "s.bind(("192.168.95.148",21))". Fehlermeldung.
Ich weiß echt nicht weiter, ansonsten würde ich auch keinen Forum Post machen...

Danke fürs lesen dieses Posts.
Mit freundlichen Grüßen,
David
Benutzeravatar
__blackjack__
User
Beiträge: 13006
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Userpet: Das hat im Grunde nix mit Python zu tun. Wenn man Netzwerkprogrammierung machen möchte, muss man sich halt auch mit Netzwerken, IP-Adressen und -Adressbereichen, Diensten, Portnummern, und dem ganzen Kram der damit zusammenhängt beschäftigen.

In dem Buch steht doch sicher auch was Du machen musst bevor Du Dich mit einem lokalen FTP-Server verbinden kannst und das Du 192.168.95.148 durch die tatsächliche IP ersetzen musst. Und da steht auch `connect()` und nicht `bind()`.

Wenn Du Buchseiten zeigst, machen Bilder vielleicht noch Sinn, aber Terminalein- und ausgaben wäre es besser wenn Du einfach den Text in den Beitrag kopierst, am besten in Code-Tags gesetzt.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
Sirius3
User
Beiträge: 17712
Registriert: Sonntag 21. Oktober 2012, 17:20

Wenn ein Buch mehr oder weniger als Schwerpunkt Netzwerkprogrammierung hat und dann wörtlich da steht: „Die Methode recv(1024) liest die nächsten 1024 Bytes auf dem Socket.“ dann taugt es nur noch zum Verheizen, wenn die Bits nur nicht so schlecht brennen würden.
Antworten