Advertisement
bluethundr12

Untitled

Jul 16th, 2020
799
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.78 KB | None | 0 0
  1. ### error
  2.  
  3. Traceback (most recent call last):
  4.   File ".\ec2_mongo.py", line 208, in <module>
  5.     main()
  6.   File ".\ec2_mongo.py", line 189, in main
  7.     mongo_select_all()
  8.   File ".\ec2_mongo.py", line 108, in mongo_select_all
  9.     mydb, instance_col = set_db()
  10.   File ".\ec2_mongo.py", line 63, in set_db
  11.     instance_col = mydb[instance_col]
  12. TypeError: string indices must be integers
  13.  
  14.  
  15. ### code
  16. def set_db():
  17.     myclient = connect_db()
  18.     message = "Select Database"
  19.     banner(message)
  20.     today = datetime.today()
  21.     today = today.strftime("%m-%d-%Y")
  22.     if __name__ == '__main__':
  23.         print(Fore.CYAN + "Available MongoDB Databases:")
  24.         if myclient != None:
  25.             # the list_database_names() method returns a list of strings
  26.             database_names = myclient.list_database_names()
  27.             counter = 1
  28.             for db in database_names:
  29.                 message = str(counter) + '. ' + db
  30.                 print(message)
  31.                 counter = counter + 1
  32.         print ("There are", len(database_names), "databases.\n")
  33.         print(f"Please select a database. Enter a number 1 through {len(database_names)}.")
  34.         choice = input("Enter a number: ")
  35.         if is_digit(choice) == True:
  36.             if int(choice) > counter:
  37.                 print("Wrong selection.")
  38.                 set_db()
  39.             choice = int(choice)
  40.             choice = choice - 1
  41.             mydb = database_names[choice]
  42.             #mydb = myclient['aws_ec2_list']
  43.             print(f"You've selected: {mydb}\n")
  44.         else:
  45.             print("Must enter a digit. Try again.\n")
  46.             set_db()
  47.     else:
  48.         mydb = myclient['aws_ec2_list']
  49.     instance_col = 'ec2_list-' + today
  50.     instance_col = mydb[instance_col]
  51.     return mydb, instance_col
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement