Ralip

RegisterHelp

Nov 2nd, 2022
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.81 KB | None | 0 0
  1. import click
  2. import random
  3. import pyperclip
  4. import keyboard
  5. import time
  6.  
  7. def randomphone(): # функция генерации случайного номера телефона без +7
  8. number_starts = ['950', '951', '952', '908', '9000', '996', '919', '958', '912', '902', '999', '922']
  9. number = number_starts[random.randint(0, len(number_starts) - 1)] # случайное начало номера телефона
  10. count = len(number)
  11. while count != 10: # добить телефон до 10 цифр
  12. count += 1
  13. number += str(random.randint(0, 9))
  14. return number
  15.  
  16. def randompass(): # функция генерации уникального пароля
  17. password = ''
  18. for i in range(0, random.randint(6, 10)):
  19. idc = random.randint(65, 122) # случайный номер char символа
  20. if 91 <= idc < 97: # с 91 по 97 символы - не буквы, заменяем циферкой
  21. idc = random.randint(48, 57)
  22. password += chr(idc)
  23. password += str(random.randint(11, 99)) # в конце две цифры, чтоб наверняка были
  24. return password
  25.  
  26.  
  27. @click.group(chain=True)
  28. def reg():
  29. pass
  30.  
  31.  
  32. @reg.command('phone', help='(-n кол-во) Сгенерировать и скопировать случайный номер телефона')
  33. @click.option('-n', default=1, help='Количество случайных номеров.')
  34. def phone(n):
  35. for x in range(n):
  36. number = randomphone()
  37. click.echo(number) # вывести в консоль
  38. pyperclip.copy(number) # скопировать
  39. click.echo('Ожидание нажатия Control + V') # напоминание
  40. keyboard.wait("ctrl+v") # ожидание комбинации клавиш
  41. time.sleep(0.1)
  42.  
  43. @reg.command('person', help='(-child) Читать из файла и последовательно копировать')
  44. @click.option('-child', is_flag=True, help="Ребёнок 18-") # заменить флаг чайлд на определение по дате рождения!!!!!!!!
  45. def person(child):
  46. f = open("list.txt", "r")
  47. i = 0 # количество введённых отдельных слов (нужно словить, когда их будет 4: дата рождения, Ф, И, О).
  48. number = '' # "присваивание" переменной хранящей номер телефона
  49. a = f.read().split() # чтение массива слов
  50. for x in range(len(a)):
  51. i += 1
  52. if child and i == 2: # Если ребёнок то повторить фамилию дважды, затем слово "мать" и номер
  53. # фамилия
  54. click.echo(a[x])
  55. pyperclip.copy(a[x])
  56. click.echo('Ожидание нажатия Control + V')
  57. keyboard.wait("ctrl+v")
  58. time.sleep(0.1)
  59. # слово "мать"
  60. click.echo('Мать')
  61. pyperclip.copy('Мать')
  62. click.echo('Ожидание нажатия Control + V')
  63. keyboard.wait("ctrl+v")
  64. time.sleep(0.1)
  65. # номер телефона
  66. number = randomphone() # вызов генерации номера
  67. click.echo(number)
  68. pyperclip.copy(number)
  69. click.echo('Ожидание нажатия Control + V')
  70. keyboard.wait("ctrl+v")
  71. time.sleep(0.1)
  72. click.echo(a[x]) # вывод слова
  73. pyperclip.copy(a[x]) # копирование слова
  74. click.echo('Ожидание нажатия Control + V')
  75. keyboard.wait("ctrl+v")
  76. time.sleep(0.1) # исправление некоторых багов
  77. if i == 4: # когда введена дата и Ф, И, О:
  78. i = 0
  79. # Случайный номер телефона:
  80. if not child: # если не ребёнок, то сгенерить (если ребёнок, то сгенерилось выше)
  81. number = randomphone()
  82. click.echo(number)
  83. pyperclip.copy(number)
  84. click.echo('Ожидание нажатия Control + V')
  85. keyboard.wait("ctrl+v")
  86. time.sleep(0.1)
  87. # Случайный пароль:
  88. password = randompass()
  89. click.echo(password)
  90. pyperclip.copy(password)
  91. click.echo(click.style('Данные пользователя введены. Для перехода к следующему нажмите Alt + Shift + Enter', fg='green'))
  92. keyboard.wait("alt+shift+enter")
  93. time.sleep(0.1)
  94.  
  95.  
  96. if __name__ == '__main__':
  97. reg()
Add Comment
Please, Sign In to add comment