Advertisement
Guest User

Untitled

a guest
Jul 16th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.63 KB | None | 0 0
  1. # В программе присутствуют 2 аргумента строки это -F(колличество фото) и -P(название папки) -N(режим названия фото if 0 буквами 1 цифрами) -D(Режим проверки скорости)
  2. # Импорты
  3. from bs4 import BeautifulSoup
  4. from colorama import Fore , Back , init , Style
  5. import requests
  6. from defs import * # ХЕНТАЙ
  7. import time
  8. import os
  9. import getpass
  10. import sys
  11. import time
  12. init()
  13. ajax1=args(sys.argv)
  14. ajax1 = {k.upper(): ajax1[k] for k in ajax1}
  15. user_name=getpass.getuser()
  16. print(Fore.RED+f'Hi {user_name}'+Fore.WHITE)
  17. del user_name
  18. if os.name == 'posix':
  19. print('О вы под линуксом, моё почтение')
  20. # Стандартные переменные
  21. ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) + '/'
  22. spisok = 1
  23. url='https://prnt.sc/'
  24. # Просто бред
  25. try:
  26. if ajax1 == {}:# Функция проверки аргументов
  27. print('Программа стартует без аргументов')
  28. else:
  29. print('Программа стартует с аргументами')
  30. except:
  31. print('Неверные значения аргументов')
  32. exit()
  33. try:# Простенькая функция проверки аргумента F
  34. i=int(ajax1['-F'])
  35. except NameError:
  36. i = int(input('Сколько раз делать парсинг(для бесконечного парсинга используйте 0): '))# Переменная количества
  37. try:# Простенькая функция проверки аргумента P
  38. path=ROOT_DIR + ajax1['-P']+'/'
  39. except NameError:
  40. path = ROOT_DIR + 'result/'
  41. try:
  42. if ajax1['-N']=='1':
  43. num_mode=True
  44. else:
  45. num_mode=False
  46. except NameError:
  47. num_mode=False
  48. try:
  49. if ajax1['-D'] == '1':
  50. DEBUG_MODE=True
  51. elif ajax1['-D'] == '0':
  52. DEBUG_MODE=False
  53. except NameError:
  54. DEBUG_MODE=False
  55. del ajax1, ROOT_DIR# Удаляю хлам
  56. # Конец бреда
  57. headers = 'Mozilla/5.0 (compatible; U; ABrowse 0.6; Syllable) AppleWebKit/420+ (KHTML, like Gecko)'# ХЕДЕРЫ
  58. try:# Логика проверки папок
  59. os.mkdir(path)
  60. print(Fore.RED + f'Директория созданна: {path}'+Back.BLACK)
  61. except OSError:
  62. print(Fore.RED + f'Директория существует: {path}'+Back.BLACK)
  63. print(Fore.CYAN+Style.BRIGHT+'Begin')
  64. # Прога
  65. if i == 0:
  66. while True:# Режим бесконечного парсинга
  67. if DEBUG_MODE == True:
  68. start = time.monotonic()
  69. id_pic = rand(6)
  70. a=url+id_pic
  71. reque = requests.get(a,headers={'user-agent':headers})
  72. soup = BeautifulSoup(reque.text, 'lxml')
  73. azws=soup.find('img').get('src')
  74. while True:# Проверка на наличие файла
  75. if azws[:4] == 'http':
  76. if num_mode == False:
  77. down(azws,path, id_pic)
  78. elif num_mode == True:
  79. wa=str(spisok).zfill(3)
  80. down(azws,path,wa)
  81. end = time.monotonic()
  82. if DEBUG_MODE == True:
  83. print(Back.GREEN+Style.BRIGHT+ f'{spisok} файл {id_pic} успешно скачан {end-start}'+Back.BLACK)
  84. else:
  85. print(Back.GREEN+Style.BRIGHT+ f'{spisok} файл {id_pic} успешно скачан'+Back.BLACK)
  86. spisok+=1
  87. break
  88. else:
  89. print(Back.RED+Style.BRIGHT+f'{spisok} файла {id_pic} не существует генерируем другой'+Back.BLACK)
  90. id_pic = rand(6)
  91. a=url+id_pic
  92. reque = requests.get(a,headers={'user-agent':headers})
  93. soup = BeautifulSoup(reque.text, 'lxml')
  94. azws=soup.find('img').get('src')
  95. continue
  96. else:# Режим конечного парсинга
  97. for i in range(i):
  98. start = time.monotonic()
  99. id_pic = rand(6)
  100. a=url+id_pic
  101. reque = requests.get(a,headers={'user-agent':headers})
  102. soup = BeautifulSoup(reque.text, 'lxml')
  103. azws=soup.find('img').get('src')
  104. while True:# Проверка на наличие файла
  105. if azws[:4] == 'http':
  106. if num_mode == False:
  107. down(azws,path, id_pic)
  108. elif num_mode == True:
  109. wa=str(spisok).zfill(3)
  110. down(azws,path,wa)
  111. end = time.monotonic()
  112. if DEBUG_MODE == True:
  113. print(Back.GREEN+Style.BRIGHT+ f'{spisok} файл {id_pic} успешно скачан {end-start}'+Back.BLACK)
  114. else:
  115. print(Back.GREEN+Style.BRIGHT+ f'{spisok} файл {id_pic} успешно скачан'+Back.BLACK)
  116. spisok+=1
  117. break
  118. else:
  119. print(Back.RED+Style.BRIGHT+f'{spisok} файла {id_pic} не существует генерируем другой'+Back.BLACK)
  120. id_pic = rand(6)
  121. a=url+id_pic
  122. reque = requests.get(a,headers={'user-agent':headers})
  123. soup = BeautifulSoup(reque.text, 'lxml')
  124. azws=soup.find('img').get('src')
  125. continue
  126. # Типо END
  127. print(Back.CYAN+Style.BRIGHT+'ALL'+Back.BLACK)
  128. time.sleep(15)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement