port generator
This commit is contained in:
parent
8d7cd75bed
commit
34901c2a31
39
gen_ports.py
Normal file
39
gen_ports.py
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
import sqlite3
|
||||||
|
import random
|
||||||
|
import uuid
|
||||||
|
|
||||||
|
# Create the SQLite database if it doesn't exist
|
||||||
|
conn = sqlite3.connect("numbers_db.sqlite")
|
||||||
|
c = conn.cursor()
|
||||||
|
c.execute('''CREATE TABLE IF NOT EXISTS numbers (id text, number integer)''')
|
||||||
|
|
||||||
|
def generate_unique_random():
|
||||||
|
# Generate a random number between 32768 and 65535
|
||||||
|
rand_num = random.randint(32768, 65535)
|
||||||
|
|
||||||
|
# Generate a unique ID using UUID
|
||||||
|
new_id = str(uuid.uuid4())
|
||||||
|
|
||||||
|
# Check if the number is already in the database
|
||||||
|
c.execute("SELECT * FROM numbers WHERE number = ?", (rand_num,))
|
||||||
|
results = c.fetchall()
|
||||||
|
|
||||||
|
# If the number doesn't exist in the database, add it to the table
|
||||||
|
if not results:
|
||||||
|
c.execute("INSERT INTO numbers VALUES (?, ?)", (new_id, rand_num))
|
||||||
|
conn.commit()
|
||||||
|
else:
|
||||||
|
# If the number already exists, keep generating new random numbers until a unique one is found
|
||||||
|
while True:
|
||||||
|
rand_num = random.randint(32768, 65535)
|
||||||
|
c.execute("SELECT * FROM numbers WHERE number = ?", (rand_num,))
|
||||||
|
results = c.fetchall()
|
||||||
|
if not results:
|
||||||
|
new_id = str(uuid.uuid4())
|
||||||
|
c.execute("INSERT INTO numbers VALUES (?, ?)", (new_id, rand_num))
|
||||||
|
conn.commit()
|
||||||
|
break
|
||||||
|
return rand_num
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
print("Unique random number: " + str(generate_unique_random()))
|
BIN
numbers_db.sqlite
Normal file
BIN
numbers_db.sqlite
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user