try to add model in the request header

This commit is contained in:
2024-09-24 17:10:04 +02:00
parent 8f4670c6d0
commit 00db63d09b
3 changed files with 32 additions and 4 deletions
+3 -1
View File
@@ -181,7 +181,9 @@ class AppointmentRequestSender(threading.Thread):
sender.cookie_str = _new_le_cookies sender.cookie_str = _new_le_cookies
time.sleep(random.randint(1, 3)) time.sleep(random.randint(1, 3))
self.already_tried_contact_list.append(con) self.already_tried_contact_list.append(con)
can_continue = sender.send_request(HERMES_REGISTER, js_data, con, csrf=self.valid_csrf) _telephone_model = _received_dict['model']
can_continue = sender.send_request(HERMES_REGISTER, js_data, con, model=_telephone_model,
csrf=self.valid_csrf)
if can_continue == RequestResult.SUCCESS: if can_continue == RequestResult.SUCCESS:
# 让服务器读取成功的约会 # 让服务器读取成功的约会
try: try:
+1 -1
View File
@@ -62,7 +62,7 @@ class LinkValidatorWithProvidedList(threading.Thread):
'Accept': '*/*', 'Accept': '*/*',
'Accept-Encoding': 'gzip, deflate, br', 'Accept-Encoding': 'gzip, deflate, br',
'Cache-Control': 'max-age=0', 'Cache-Control': 'max-age=0',
# 'Referer': linkPojo.url, 'Referer': linkPojo.url,
'Cookie': self.cookie_str, 'Cookie': self.cookie_str,
'Sec-Fetch-Mode': 'navigate', 'Sec-Fetch-Mode': 'navigate',
'Host': 'rendezvousparis.hermes.com', 'Host': 'rendezvousparis.hermes.com',
+28 -2
View File
@@ -1,6 +1,7 @@
import datetime import datetime
import json import json
import random import random
import re
import time import time
from http.cookies import SimpleCookie from http.cookies import SimpleCookie
from models.contact_pojo import ContactPojo from models.contact_pojo import ContactPojo
@@ -14,6 +15,15 @@ from queue_message.CookiesPublisher import CookiesPublisher
from utils.address_ip import get_address_ip from utils.address_ip import get_address_ip
def get_chrome_version_from_ua(ua):
_result = re.findall("Chrome\/([0-9]*)", ua)
print(_result)
if len(_result) > 0:
return _result[0]
else:
"128"
class Sender: class Sender:
def __init__(self, cookie_str, cookiesPublisher: CookiesPublisher, received_dict, proxy_to_use, logger): def __init__(self, cookie_str, cookiesPublisher: CookiesPublisher, received_dict, proxy_to_use, logger):
@@ -59,7 +69,8 @@ class Sender:
def get_csrf(self): def get_csrf(self):
pass pass
def send_request(self, url, js_data: JsDataPojo, contact: ContactPojo, csrf: str = None) -> RequestResult: def send_request(self, url, js_data: JsDataPojo, contact: ContactPojo, model: str,
csrf: str = None) -> RequestResult:
if csrf is None: if csrf is None:
if self._csrf is None: if self._csrf is None:
_csrf = '8Bs2dBwb-nHONOzo9Tei2CcMZglEfsRqUz8E' _csrf = '8Bs2dBwb-nHONOzo9Tei2CcMZglEfsRqUz8E'
@@ -68,6 +79,11 @@ class Sender:
else: else:
self._csrf = csrf self._csrf = csrf
_csrf = csrf _csrf = csrf
self.logger.info("model is:{}".format(model))
_chrome_version = get_chrome_version_from_ua(js_data.ua)
_chrome_ua_header = '"Chromium";v="{}", "Not;A=Brand";v="24", "Google Chrome";v="{}"'.format(_chrome_version,
_chrome_version)
self.logger.info("chrome_ua_header is:{}".format(_chrome_ua_header))
# 默认为空,也就是随机 # 默认为空,也就是随机
_selected_store = '' _selected_store = ''
if contact.store is not None and contact.store != "random": if contact.store is not None and contact.store != "random":
@@ -77,8 +93,13 @@ class Sender:
headers = {'Content-Type': 'application/x-www-form-urlencoded', headers = {'Content-Type': 'application/x-www-form-urlencoded',
'User-Agent': js_data.ua, 'User-Agent': js_data.ua,
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8',
'Cookie': self.cookie_str, 'Referer': 'https://rendezvousparis.hermes.com/client/register', 'Cookie': self.cookie_str,
'Referer': 'https://rendezvousparis.hermes.com/client/register',
'Sec-Fetch-Mode': 'navigate', 'Sec-Fetch-Mode': 'navigate',
'sec-ch-ua-platform': '"Android"',
'sec-ch-ua-arch': '""',
'sec-ch-ua': _chrome_ua_header,
'sec-ch-ua-model': model,
'Sec-Fetch-Dest': 'document', 'Sec-Fetch-Dest': 'document',
'Accept-Language': 'fr-FR,fr;q=0.6'} 'Accept-Language': 'fr-FR,fr;q=0.6'}
data = {'check': '', '_csrf': _csrf, 'prefer': _selected_store, data = {'check': '', '_csrf': _csrf, 'prefer': _selected_store,
@@ -130,3 +151,8 @@ class Sender:
except Exception as Error: except Exception as Error:
print(Error) print(Error)
return RequestResult.PROXY_ERROR return RequestResult.PROXY_ERROR
if __name__ == '__main__':
get_chrome_version_from_ua(
"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Mobile Safari/537.36")