2016-09-05 57 views
0

我用python制作了一个登录系统。它完美的工作,但我想在服务器或网络上运行脚本。例如:Steam。 Steam需要用户名和密码才能登录。所以我想为我的脚本做同样的事情。我怎样才能做到这一点?在服务器上运行python,执行来自计算机的命令

我的代码:

import os 
import string 
import time 

version = "1.0 Alfa" 

def login(): 
    print ("----------------------------------------") 
    print ("    Login     ") 
    print ("----------------------------------------") 
    k_name = input("Enter username: ") 
    if os.path.exists(k_name + ".txt") == False: 
     print ("Username not found.") 
     create() 
    else: 
     k_pass = input("Enter password: ") 
     with open(k_name + ".txt", "r") as f: 
      if k_pass == f.read(): 
       print("Welcome %s!"%k_name) 
       f.close() 
       input() 
      else: 
       print("Password is wrong!") 
       create() 



def create(): 
    print("You using login system %s" % version) 
    print("----------------------------------------") 
    print("|     Lobby    |") 
    print("----------------------------------------") 
    starting = input("To create user type R, to login type L").upper() 
    if starting == "R": 
     name = input("Enter username: ") 
     password = input("Enter password: ") 
     password2 = input("Enter password again: ") 
     if password == password2: 
      newfile = open(name + ".txt", "w") 
      newfile.write(password) 
      newfile.close() 
      print("User created. Redirecting you to login.") 
      time.sleep(2) 
      login() 
     elif password != password2: 
      print("Passwords doesn't match.") 
      input() 
      create() 
    elif starting == "L": 
     login() 
    else: 
     print("\nWrong button\n") 
     create() 

create() 
+0

,你可以分享你在本地运行的脚本来估计它是否缺少要在服务器上执行的内容? – sr3z

+0

编辑帖子。在这里有:) – deniz07

+0

这里有两个选择:1)要么你想从服务器运行这个脚本就像一个远程脚本 - 在这种情况下,你应该提供脚本作为命令行参数或配置文件2)或你想通过网络界面登录。我会在几分钟内给出选项1)的提示 – sr3z

回答

0

这里是一个可以运行该脚本:蟒蛇test.py用户通过 如果没有找到文件,它会保存数据并进行登录

#!/usr/bin/env python 
import sys, getopt 
import os 
import time 

version = "1.0 Alfa" 

def login(username=None, password=None): 
    print ("----------------------------------------") 
    print ("    Login     ") 
    print ("----------------------------------------") 
    if username: 
     k_name = username 
    else: 
     k_name = input("Enter username: ") 
    if os.path.exists(k_name + ".txt") == False: 
     print ("Username not found.") 
     create(username, password, "R") 
    else: 
     if password: 
      k_pass = password 
     else: 
      k_pass = input("Enter password: ") 

     with open(k_name + ".txt", "r") as f: 
      if k_pass == f.read(): 
       if not username: 
        print("Welcome %s!"%k_name) 
        f.close() 
        input() 
      else: 
       print("Password is wrong!") 
       create() 



def create(username=None, password=None, mode="L"): 
    print("You using login system %s" % version) 
    print("----------------------------------------") 
    print("|     Lobby    |") 
    print("----------------------------------------") 

    if mode: 
     starting = mode 
    else: 
     starting = input("To create user type R, to login type L").upper() 

    if starting == "R": 
     if username: 
      name = username 
     else: 
      name = input("Enter username: ") 
     if password: 
      password2 = password 
     else: 
      password = input("Enter password: ") 
      password2 = input("Enter password again: ") 

     if password == password2: 
      newfile = open(name + ".txt", "w") 
      newfile.write(password) 
      newfile.close() 
      print("User created. Redirecting you to login.") 
      time.sleep(2) 
      login(username, password) 
     elif password != password2: 
      print("Passwords doesn't match.") 
      input() 
      create() 
    elif starting == "L": 
     login(username, password) 
    else: 
     print("\nWrong button\n") 
     create() 

def main(argv): 
    print sys.argv 

    if len(sys.argv) < 3: 
     print 'test.py <username> <password>' 
     sys.exit() 

    username = sys.argv[1] 
    password = sys.argv[2] 

    print 'username is ', username 
    print 'password is ', password 
    create(username, password) 

if __name__ == "__main__": 
    main(sys.argv[1:]) 
相关问题