Dooratre commited on
Commit
acbe0ec
·
verified ·
1 Parent(s): 3d84787

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +84 -23
app.py CHANGED
@@ -1,26 +1,87 @@
 
 
 
1
  import requests
 
 
 
 
2
 
3
- url = "https://api.puter.com/signup"
4
- headers = {
5
- "Cookie": "__stripe_mid=b8db7ebe-585c-41e2-8296-2a2e96f4bf4ad14567; __stripe_sid=3cb11879-af75-44c2-a275-adde8714f8ccf13759",
6
- "Content-Type": "application/json",
7
- "Origin": "https://puter.com",
8
- "Sec-Fetch-Site": "same-origin",
9
- "Sec-Fetch-Mode": "cors",
10
- "Sec-Fetch-Dest": "empty",
11
- "Referer": "https://puter.com/",
12
- "Accept-Encoding": "gzip, deflate, br",
13
- "Priority": "u=1, i",
14
-
15
- "Connection": "keep-alive"
16
- }
17
- data = {
18
- "username": "omarnwregee",
19
- "email": "[email protected]",
20
- "password": "1QAZ2wsx34$",
21
- "send_confirmation_code": False,
22
- "p102xyzname": ""
23
- }
 
 
 
 
 
 
24
 
25
- response = requests.post(url, headers=headers, json=data)
26
- print(response.status_code, response.text)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import time
3
+ import logging
4
  import requests
5
+ from requests.adapters import HTTPAdapter
6
+ from urllib3.poolmanager import PoolManager
7
+ from urllib3.util.retry import Retry
8
+ import ssl
9
 
10
+ # تكوين التسجيل (Logging)
11
+ logging.basicConfig(
12
+ level=logging.INFO,
13
+ format="%(asctime)s [%(levelname)s] %(message)s",
14
+ handlers=[logging.StreamHandler()],
15
+ )
16
+
17
+ class SSLAdapter(HTTPAdapter):
18
+ def init_poolmanager(self, *args, **kwargs):
19
+ context = ssl.create_default_context()
20
+ context.set_ciphers("DEFAULT:@SECLEVEL=1") # دعم إصدارات TLS القديمة
21
+ kwargs["ssl_context"] = context
22
+ return super().init_poolmanager(*args, **kwargs)
23
+
24
+ def create_session():
25
+ session = requests.Session()
26
+ # تعيين SSL Adapter مخصص
27
+ session.mount("https://", SSLAdapter())
28
+ # إعادة المحاولة تلقائيًا عند الفشل
29
+ retries = Retry(
30
+ total=3,
31
+ backoff_factor=1,
32
+ status_forcelist=[429, 500, 502, 503, 504],
33
+ allowed_methods=["POST", "GET"],
34
+ )
35
+ session.mount("https://", HTTPAdapter(max_retries=retries))
36
+ return session
37
 
38
+ def signup_user():
39
+ url = "https://api.puter.com/signup"
40
+ headers = {
41
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",
42
+ "Accept": "*/*",
43
+ "Content-Type": "application/json",
44
+ "Origin": "https://puter.com",
45
+ "Referer": "https://puter.com/",
46
+ "Sec-Ch-Ua": '"Not:A-Brand";v="24", "Chromium";v="134"',
47
+ "Sec-Ch-Ua-Mobile": "?0",
48
+ "Sec-Ch-Ua-Platform": '"Linux"', # متوافق مع Linux
49
+ "Accept-Language": "en-US,en;q=0.9",
50
+ "X-Requested-With": "XMLHttpRequest",
51
+ }
52
+ data = {
53
+ "username": os.getenv("PUTER_USERNAME", "omarnwregee"), # استخدام متغيرات البيئة
54
+ "email": os.getenv("PUTER_EMAIL", "[email protected]"),
55
+ "password": os.getenv("PUTER_PASSWORD", "1QAZ2wsx34$"),
56
+ "send_confirmation_code": False,
57
+ "p102xyzname": "",
58
+ }
59
+ try:
60
+ with create_session() as session:
61
+ response = session.post(
62
+ url,
63
+ headers=headers,
64
+ json=data,
65
+ timeout=10,
66
+ verify=True, # تأكد من التحقق من شهادة SSL
67
+ )
68
+ response.raise_for_status() # إثارة خطأ عند الردود غير الناجحة
69
+ logging.info(f"Success: {response.status_code}")
70
+ return response.json()
71
+ except requests.exceptions.HTTPError as e:
72
+ logging.error(f"HTTP Error: {e}")
73
+ except requests.exceptions.ConnectionError as e:
74
+ logging.error(f"Connection Error: {e}")
75
+ except requests.exceptions.Timeout as e:
76
+ logging.error(f"Timeout Error: {e}")
77
+ except Exception as e:
78
+ logging.error(f"Unknown Error: {e}")
79
+
80
+ if __name__ == "__main__":
81
+ # تجنب إرسال بياناتك الحقيقية في الكود، استخدم متغيرات البيئة
82
+ os.environ["PUTER_USERNAME"] = "your_username"
83
+ os.environ["PUTER_EMAIL"] = "[email protected]"
84
+ os.environ["PUTER_PASSWORD"] = "your_secure_password"
85
+
86
+ # تنفيذ التسجيل
87
+ signup_user()