|
@@ -3,7 +3,7 @@
|
|
|
from odoo import models, fields
|
|
from odoo import models, fields
|
|
|
from httpx import Client
|
|
from httpx import Client
|
|
|
from concurrent.futures import ThreadPoolExecutor, as_completed
|
|
from concurrent.futures import ThreadPoolExecutor, as_completed
|
|
|
-
|
|
|
|
|
|
|
+from fake_useragent import UserAgent
|
|
|
from odoo.exceptions import UserError
|
|
from odoo.exceptions import UserError
|
|
|
|
|
|
|
|
|
|
|
|
@@ -74,6 +74,9 @@ class Daily3dos(models.Model):
|
|
|
email = email
|
|
email = email
|
|
|
password = password
|
|
password = password
|
|
|
|
|
|
|
|
|
|
+ ua = UserAgent()
|
|
|
|
|
+ user_agent = ua.random
|
|
|
|
|
+
|
|
|
client = Client(proxy="http://127.0.0.1:7890")
|
|
client = Client(proxy="http://127.0.0.1:7890")
|
|
|
|
|
|
|
|
login_url = "https://api.dashboard.3dos.io/api/auth/login"
|
|
login_url = "https://api.dashboard.3dos.io/api/auth/login"
|
|
@@ -91,7 +94,7 @@ class Daily3dos(models.Model):
|
|
|
"Sec-Fetch-Dest": "empty",
|
|
"Sec-Fetch-Dest": "empty",
|
|
|
"Sec-Fetch-Mode": "cors",
|
|
"Sec-Fetch-Mode": "cors",
|
|
|
"Sec-Fetch-Site": "same-site",
|
|
"Sec-Fetch-Site": "same-site",
|
|
|
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"
|
|
|
|
|
|
|
+ "User-Agent": user_agent
|
|
|
}
|
|
}
|
|
|
login_payload = {
|
|
login_payload = {
|
|
|
"email": email,
|
|
"email": email,
|
|
@@ -131,7 +134,7 @@ class Daily3dos(models.Model):
|
|
|
"Sec-Fetch-Dest": "empty",
|
|
"Sec-Fetch-Dest": "empty",
|
|
|
"Sec-Fetch-Mode": "cors",
|
|
"Sec-Fetch-Mode": "cors",
|
|
|
"Sec-Fetch-Site": "same-site",
|
|
"Sec-Fetch-Site": "same-site",
|
|
|
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"
|
|
|
|
|
|
|
+ "User-Agent": user_agent
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
try:
|
|
try:
|
|
@@ -157,7 +160,7 @@ class Daily3dos(models.Model):
|
|
|
"Sec-Fetch-Dest": "empty",
|
|
"Sec-Fetch-Dest": "empty",
|
|
|
"Sec-Fetch-Mode": "cors",
|
|
"Sec-Fetch-Mode": "cors",
|
|
|
"Sec-Fetch-Site": "same-site",
|
|
"Sec-Fetch-Site": "same-site",
|
|
|
- "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36"
|
|
|
|
|
|
|
+ "User-Agent": user_agent
|
|
|
}
|
|
}
|
|
|
claim_payload = {
|
|
claim_payload = {
|
|
|
"id": "daily-reward-api"
|
|
"id": "daily-reward-api"
|
|
@@ -195,6 +198,11 @@ class Daily3dosLine(models.Model):
|
|
|
password = fields.Char(string='Password')
|
|
password = fields.Char(string='Password')
|
|
|
message = fields.Char(string='Message')
|
|
message = fields.Char(string='Message')
|
|
|
|
|
|
|
|
|
|
+ def btn_execute_single(self):
|
|
|
|
|
+ for retry in range(3):
|
|
|
|
|
+ result = self.daily_3dos_id.account_handle(self.account, self.password)
|
|
|
|
|
+ print(result)
|
|
|
|
|
+
|
|
|
|
|
|
|
|
class Daily3dosConfig(models.Model):
|
|
class Daily3dosConfig(models.Model):
|
|
|
_name = 'daily.3dos.config'
|
|
_name = 'daily.3dos.config'
|
|
@@ -204,3 +212,26 @@ class Daily3dosConfig(models.Model):
|
|
|
account = fields.Char(string='Account')
|
|
account = fields.Char(string='Account')
|
|
|
password = fields.Char(string='Password')
|
|
password = fields.Char(string='Password')
|
|
|
description = fields.Text(string='Description')
|
|
description = fields.Text(string='Description')
|
|
|
|
|
+
|
|
|
|
|
+ def btn_init_data(self):
|
|
|
|
|
+ init_data = {
|
|
|
|
|
+ "jack0210_@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj01@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj02@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj03@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj04@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj05@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj06@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj07@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj08@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj09@hotmail.com": "aaaAAA111!!!",
|
|
|
|
|
+ "yujieccyj10@hotmail.com": "aaaAAA111!!!"
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ for account, password in init_data.items():
|
|
|
|
|
+ created = self.search([('account', '=', account)], limit=1)
|
|
|
|
|
+ if not created:
|
|
|
|
|
+ self.create({
|
|
|
|
|
+ 'account': account,
|
|
|
|
|
+ 'password': password
|
|
|
|
|
+ })
|