diff --git a/docs/4_29_2/jsdata_ch_4_29_2.json b/docs/4_29_2/jsdata_ch_4_29_2.json new file mode 100644 index 0000000..ad4067c --- /dev/null +++ b/docs/4_29_2/jsdata_ch_4_29_2.json @@ -0,0 +1,127 @@ +{ + "ttst": 52, + "ifov": false, + "hc": 8, + "br_oh": 722, + "br_ow": 393, + "ua": "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Mobile Safari/537.36", + "wbd": false, + "tagpu": 8.935339085443164, + "wdif": false, + "wdifrm": false, + "npmtm": false, + "br_h": 722, + "br_w": 393, + "isf": true, + "nddc": 1, + "rs_h": 851, + "rs_w": 393, + "rs_cd": 24, + "phe": false, + "nm": false, + "jsf": false, + "lg": "fr", + "pr": 2.75, + "ars_h": 851, + "ars_w": 393, + "tz": -120, + "str_ss": true, + "str_ls": true, + "str_idb": true, + "str_odb": false, + "plgod": false, + "plg": 2, + "plgne": "err", + "plgre": "err", + "plgof": "err", + "plggt": "err", + "pltod": false, + "hcovdr": false, + "hcovdr2": false, + "plovdr": false, + "plovdr2": false, + "ftsovdr": false, + "ftsovdr2": false, + "lb": false, + "eva": 33, + "lo": false, + "ts_mtp": 5, + "ts_tec": true, + "ts_tsa": true, + "vnd": "Google Inc.", + "bid": "NA", + "mmt": "empty", + "plu": "15FKFpc,WPHLs1Do", + "hdn": false, + "awe": false, + "geb": false, + "dat": false, + "med": "defined", + "aco": "probably", + "acots": false, + "acmp": "probably", + "acmpts": true, + "acw": "probably", + "acwts": false, + "acma": "maybe", + "acmats": false, + "acaa": "probably", + "acaats": true, + "ac3": "", + "ac3ts": false, + "acf": "probably", + "acfts": false, + "acmp4": "maybe", + "acmp4ts": false, + "acmp3": "probably", + "acmp3ts": false, + "acwm": "maybe", + "acwmts": false, + "ocpt": false, + "vco": "", + "vcots": false, + "vch": "probably", + "vchts": true, + "vcw": "probably", + "vcwts": true, + "vc3": "maybe", + "vc3ts": false, + "vcmp": "", + "vcmpts": false, + "vcq": "", + "vcqts": false, + "vc1": "probably", + "vc1ts": true, + "dvm": 1, + "sqt": false, + "so": "portrait-primary", + "wdw": true, + "cokys": "bG9hZFRpbWVzY3NpL=", + "ecpc": false, + "lgs": true, + "lgsod": false, + "psn": true, + "edp": false, + "addt": true, + "wsdc": true, + "ccsr": true, + "nuad": true, + "bcda": true, + "idn": true, + "capi": false, + "svde": false, + "vpbq": true, + "ucdv": false, + "spwn": false, + "emt": false, + "bfr": false, + "dbov": false, + "cfpfe": "ZnVuY3Rpb24oKXt2YXIgbj10LG89ZG9jdW1lbnRbJ1x4NzFceDc1XHg2NVx4NzJceDc5XHg1M1x4NjVceDZjXHg2NVx4NjNceDc0XHg2Zlx4NzInXShuKDM2NCkpO2lmKG8peyFmdW5jdGlvbiB0KCl7dmFyIGk9bjt0cnl7dmFyIGE9b1tpKDI2NildW2koMjU1KV0o", + "stcfp": "aWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6NzY4ODYpCiAgICBhdCA8Y29tcHV0ZWQ+IFthcyBkZF9hY10gKGh0dHBzOi8vZC5kaWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6OTA2MTcpCiAgICBhdCBodHRwczovL2QuZGlnaXRhbC5oZXJtZXMvdGFncy5qczoyOjUxNjY5", + "ckwa": true, + "emd": "k:ai,ao,vi", + "glvd": "Google Inc. (Qualcomm)", + "glrd": "ANGLE (Qualcomm, Adreno (TM) 618, OpenGL ES 3.2)", + "wwl": false, + "jset": 1718624706 +} \ No newline at end of file diff --git a/docs/4_29_2/jsdata_le_4_29_2.json b/docs/4_29_2/jsdata_le_4_29_2.json new file mode 100644 index 0000000..4823d96 --- /dev/null +++ b/docs/4_29_2/jsdata_le_4_29_2.json @@ -0,0 +1,141 @@ +{ + "ttst": 33, + "ifov": false, + "hc": 8, + "br_oh": 674, + "br_ow": 393, + "ua": "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Mobile Safari/537.36", + "wbd": false, + "tagpu": 3.1091499265442146, + "wdif": false, + "wdifrm": false, + "npmtm": false, + "br_h": 674, + "br_w": 393, + "isf": true, + "nddc": 1, + "rs_h": 851, + "rs_w": 393, + "rs_cd": 24, + "phe": false, + "nm": false, + "jsf": false, + "lg": "fr-FR", + "pr": 2.75, + "ars_h": 851, + "ars_w": 393, + "tz": -120, + "str_ss": true, + "str_ls": true, + "str_idb": true, + "str_odb": false, + "plgod": false, + "plg": 2, + "plgne": "err", + "plgre": "err", + "plgof": "err", + "plggt": "err", + "pltod": false, + "hcovdr": false, + "hcovdr2": false, + "plovdr": false, + "plovdr2": false, + "ftsovdr": false, + "ftsovdr2": false, + "lb": false, + "eva": 33, + "lo": false, + "ts_mtp": 5, + "ts_tec": true, + "ts_tsa": true, + "vnd": "Google Inc.", + "bid": "NA", + "mmt": "empty", + "plu": "15FKFpc,WPHLs1Do", + "hdn": false, + "awe": false, + "geb": false, + "dat": false, + "med": "defined", + "aco": "probably", + "acots": false, + "acmp": "probably", + "acmpts": true, + "acw": "probably", + "acwts": false, + "acma": "maybe", + "acmats": false, + "acaa": "probably", + "acaats": true, + "ac3": "", + "ac3ts": false, + "acf": "probably", + "acfts": false, + "acmp4": "maybe", + "acmp4ts": false, + "acmp3": "probably", + "acmp3ts": false, + "acwm": "maybe", + "acwmts": false, + "ocpt": false, + "vco": "", + "vcots": false, + "vch": "probably", + "vchts": true, + "vcw": "probably", + "vcwts": true, + "vc3": "maybe", + "vc3ts": false, + "vcmp": "", + "vcmpts": false, + "vcq": "", + "vcqts": false, + "vc1": "probably", + "vc1ts": true, + "dvm": 1, + "sqt": false, + "so": "portrait-primary", + "wdw": true, + "cokys": "bG9hZFRpbWVzY3NpL=", + "ecpc": false, + "lgs": true, + "lgsod": false, + "psn": true, + "edp": false, + "addt": true, + "wsdc": true, + "ccsr": true, + "nuad": true, + "bcda": true, + "idn": true, + "capi": false, + "svde": false, + "vpbq": true, + "ucdv": false, + "spwn": false, + "emt": false, + "bfr": false, + "dbov": false, + "cfpfe": "ZnVuY3Rpb24oKXt2YXIgbj10LG89ZG9jdW1lbnRbJ1x4NzFceDc1XHg2NVx4NzJceDc5XHg1M1x4NjVceDZjXHg2NVx4NjNceDc0XHg2Zlx4NzInXShuKDM2NCkpO2lmKG8peyFmdW5jdGlvbiB0KCl7dmFyIGk9bjt0cnl7dmFyIGE9b1tpKDI2NildW2koMjU1KV0o", + "stcfp": "aWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6NzY4ODYpCiAgICBhdCA8Y29tcHV0ZWQ+IFthcyBkZF9hY10gKGh0dHBzOi8vZC5kaWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6OTA2MTcpCiAgICBhdCBodHRwczovL2QuZGlnaXRhbC5oZXJtZXMvdGFncy5qczoyOjUxNjY5", + "ckwa": true, + "emd": "k:ai,ao,vi", + "glvd": "Google Inc. (Qualcomm)", + "glrd": "ANGLE (Qualcomm, Adreno (TM) 618, OpenGL ES 3.2)", + "wwl": false, + "jset": 1718624658, + "log2": true, + "dcok": ".hermes.com", + "m_fmi": false, + "tbce": 0, + "es_sigmdn": null, + "es_mumdn": null, + "es_distmdn": null, + "es_angsmdn": null, + "es_angemdn": null, + "m_s_c": 13, + "m_m_c": 5, + "m_c_c": 5, + "m_cm_r": 1, + "m_ms_r": 0.38461538461538464 +} \ No newline at end of file diff --git a/models/ReserveResultPojo.py b/models/ReserveResultPojo.py index e4eb7b7..fdb0361 100755 --- a/models/ReserveResultPojo.py +++ b/models/ReserveResultPojo.py @@ -36,6 +36,7 @@ class ReserveResultPojo: validated_at = None proxy: str = None ua: str = None + current_ip: str = "" @staticmethod def from_firestore_dict(source): @@ -130,6 +131,7 @@ class ReserveResultPojo: u'accepted': self.accepted, u'url_validated': self.url_validated, u'proxy': self.proxy, + u'current_ip': self.current_ip, u'ua': self.ua, } diff --git a/models/contact_pojo.py b/models/contact_pojo.py index 494135e..fe6a77f 100755 --- a/models/contact_pojo.py +++ b/models/contact_pojo.py @@ -26,6 +26,7 @@ class ContactPojo: self.position = position self.note = "" self.ua = "" + self.current_ip = "" def to_firestore_dict(self): dest = { @@ -37,6 +38,7 @@ class ContactPojo: u'store': self.store, u'ccid': self.ccid, u'position': self.position, + u'current_ip': self.current_ip, u'ua': self.ua } diff --git a/models/jsdata_le_pojo.py b/models/jsdata_le_pojo.py index b48d557..e6b004f 100644 --- a/models/jsdata_le_pojo.py +++ b/models/jsdata_le_pojo.py @@ -37,8 +37,8 @@ class JsDataLeTypePojo(JsDataPojo): self.m_c_c = m_c_c self.m_cm_r = m_cm_r self.m_ms_r = m_ms_r - self.cfpfe = "ZnVuY3Rpb24oKXt2YXIgbj10LG89ZG9jdW1lbnRbJ1x4NzFceDc1XHg2NVx4NzJceDc5XHg1M1x4NjVceDZjXHg2NVx4NjNceDc0XHg2Zlx4NzInXShuKDQ2NykpO2lmKG8peyFmdW5jdGlvbiB0KCl7dmFyIGk9bjt0cnl7dmFyIGE9b1snXHg3M1x4NjhceDYxXHg2" # 4.29.1 - self.stcfp = "aWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6NzcxMjEpCiAgICBhdCA8Y29tcHV0ZWQ+IFthcyBkZF9hY10gKGh0dHBzOi8vZC5kaWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6OTAyODYpCiAgICBhdCBodHRwczovL2QuZGlnaXRhbC5oZXJtZXMvdGFncy5qczoyOjUyNTkz" # 4.29.1 + self.cfpfe = "ZnVuY3Rpb24oKXt2YXIgbj10LG89ZG9jdW1lbnRbJ1x4NzFceDc1XHg2NVx4NzJceDc5XHg1M1x4NjVceDZjXHg2NVx4NjNceDc0XHg2Zlx4NzInXShuKDM2NCkpO2lmKG8peyFmdW5jdGlvbiB0KCl7dmFyIGk9bjt0cnl7dmFyIGE9b1tpKDI2NildW2koMjU1KV0o" # 4.29.2 + self.stcfp = "aWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6NzY4ODYpCiAgICBhdCA8Y29tcHV0ZWQ+IFthcyBkZF9hY10gKGh0dHBzOi8vZC5kaWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6OTA2MTcpCiAgICBhdCBodHRwczovL2QuZGlnaXRhbC5oZXJtZXMvdGFncy5qczoyOjUxNjY5" # 4.29.2 test_data_json = """{"glvd":"ARM","glrd":"Mali-G57 MC2","hc":5,"br_oh":620,"br_ow":360,"br_h":620,"br_w":360,"rs_h":804,"rs_w":360,"rs_cd":24,"ars_h":804,"ars_w":360,"plg":2,"eva":33,"vnd":"Google Inc.","plu":["eTJjZUp","iZMOHLs1"],"ua":"Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Mobile Safari/537.36","dvm":4,"acw":"probably","pr":3,"ts_mtp":5,"tz":-120,"emd":"k:ai,vi,ao,vi d:defau,8f9de,defau,24476 g:4e652,f9991,defau,d5801","cookiesStr":"app.sig=_FqS3_SPN2D40Z4Qlq-_ybxzRvQ;datadome=VSGCNMYkY6L81typRJUpurlyd39dHxdfxIYc6DzRWDT7_rtZ8UodGcbow1okQR2zg_t4d_NcP0rC1ZHNz3XSDAGFZCJhFI49lai~x2Nb2unkhOlY8o4E04Wjmde~auDZ;app=eyJmbGFzaCI6e30sImNhY2hlZmxhc2giOltdLCJjc3JmU2VjcmV0IjoiLW9jbktLVXAzMjVTOEFEdFpLUU9kSXlMIn0=;policy=accepted;lang=fr;"}""" diff --git a/models/jsdata_pojo.py b/models/jsdata_pojo.py index c4b61a1..9d7ae03 100644 --- a/models/jsdata_pojo.py +++ b/models/jsdata_pojo.py @@ -267,8 +267,8 @@ class JsDataPojo: self.emt = False self.bfr = False self.dbov = False - self.cfpfe = "ZnVuY3Rpb24oKXt2YXIgbj10LG89ZG9jdW1lbnRbJ1x4NzFceDc1XHg2NVx4NzJceDc5XHg1M1x4NjVceDZjXHg2NVx4NjNceDc0XHg2Zlx4NzInXShuKDQ2NykpO2lmKG8peyFmdW5jdGlvbiB0KCl7dmFyIGk9bjt0cnl7dmFyIGE9b1snXHg3M1x4NjhceDYxXHg2" # 4.29.1 - self.stcfp = "aWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6NzcxMjEpCiAgICBhdCA8Y29tcHV0ZWQ+IFthcyBkZF9hY10gKGh0dHBzOi8vZC5kaWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6OTAyODYpCiAgICBhdCBodHRwczovL2QuZGlnaXRhbC5oZXJtZXMvdGFncy5qczoyOjUyNTkz" # 4.29.1 + self.cfpfe = "ZnVuY3Rpb24oKXt2YXIgbj10LG89ZG9jdW1lbnRbJ1x4NzFceDc1XHg2NVx4NzJceDc5XHg1M1x4NjVceDZjXHg2NVx4NjNceDc0XHg2Zlx4NzInXShuKDM2NCkpO2lmKG8peyFmdW5jdGlvbiB0KCl7dmFyIGk9bjt0cnl7dmFyIGE9b1tpKDI2NildW2koMjU1KV0o" # 4.29.2 + self.stcfp = "aWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6NzY4ODYpCiAgICBhdCA8Y29tcHV0ZWQ+IFthcyBkZF9hY10gKGh0dHBzOi8vZC5kaWdpdGFsLmhlcm1lcy90YWdzLmpzOjI6OTA2MTcpCiAgICBhdCBodHRwczovL2QuZGlnaXRhbC5oZXJtZXMvdGFncy5qczoyOjUxNjY5" # 4.29.2 self.ckwa = True def to_url_encoded_json(self): diff --git a/proxy_manager/proxy_manager.py b/proxy_manager/proxy_manager.py index 82a6bbd..7cb141a 100644 --- a/proxy_manager/proxy_manager.py +++ b/proxy_manager/proxy_manager.py @@ -16,8 +16,8 @@ FR_PROXY_MOB_OXY = { } FR_PROXY_ASOCK_RES_2 = { - 'http': 'http://10488120-res-country-FR:k94fsbn9a@217.23.6.161:11287', - 'https': 'http://10488120-res-country-FR:k94fsbn9a@217.23.6.161:11287' + 'http': 'http://zd6fbrujot-res-country-FR-hold-query:8k8avNlnLHQaMsWg@217.23.6.161:9999', + 'https': 'http://zd6fbrujot-res-country-FR-hold-query:8k8avNlnLHQaMsWg@217.23.6.161:9999' } FR_PROXY_MOB_OXY_STICKY = { 'http': 'http://customer-rendezvousmob-cc-FR:Rdv202220212023@fr-pr.oxylabs.io:{}', @@ -37,12 +37,21 @@ FR_DATA_IMPULSE_RES = { 'http': 'http://ac2b8183c3b02714cbd1__cr.fr:336e7f8f4b17e5bd@gw.dataimpulse.com:823', 'https': 'http://ac2b8183c3b02714cbd1__cr.fr:336e7f8f4b17e5bd@gw.dataimpulse.com:823' } + +FR_MOBILE_ANY_IP_STICKY = { + 'http': 'http://user_6a7f21,type_mobile,country_FR,session_{}:d5c051@portal.anyip.io:1080', + 'https': 'http://user_6a7f21,type_mobile,country_FR,session_{}:d5c051@portal.anyip.io:1080', +} # 八分之一用data_impulse MOBILE_PROXY_LIST = [FR_PROXY_MOB_OXY_STICKY, FR_PROXY_MOB_OXY_STICKY, FR_PROXY_MOB_OXY_STICKY, FR_PROXY_MOB_OXY_STICKY, - FR_PROXY_MOB_OXY_STICKY, FR_PROXY_MOB_OXY_STICKY, FR_PROXY_MOB_OXY_STICKY, FR_PROXY_RES_OXY_STICKY, + FR_PROXY_MOB_OXY_STICKY, FR_MOBILE_ANY_IP_STICKY, FR_MOBILE_ANY_IP_STICKY, FR_MOBILE_ANY_IP_STICKY, + FR_PROXY_RES_OXY_STICKY, FR_PROXY_DATA_IMPULSE_STICKY] +# MOBILE_PROXY_LIST = [FR_MOBILE_ANY_IP_STICKY] + + class ProxyManager: def __init__(self, logger): @@ -50,10 +59,11 @@ class ProxyManager: def get_link_validate_proxy(self, links_to_validate: list) -> list: if len(links_to_validate) > 15: - return [FR_PROXY_RES_OXY, FR_PROXY_ASOCK_RES_2, FR_DATA_IMPULSE_RES, FR_ASOCKS_MOBILE_PROXY] + return [FR_PROXY_RES_OXY, FR_PROXY_ASOCK_RES_2, FR_DATA_IMPULSE_RES] + # return [FR_PROXY_RES_OXY, FR_PROXY_ASOCK_RES_2, FR_DATA_IMPULSE_RES, FR_ASOCKS_MOBILE_PROXY] else: - return [FR_PROXY_RES_OXY, FR_PROXY_ASOCK_RES_2, FR_ASOCKS_MOBILE_PROXY] + return [FR_PROXY_RES_OXY, FR_PROXY_ASOCK_RES_2, FR_DATA_IMPULSE_RES] # return [FR_PROXY_RES_OXY] def get_result_link_proxy(self): @@ -64,6 +74,9 @@ class ProxyManager: if "oxylabs" in _chosen_proxy["http"]: self.logger.info("use oxylabs proxy") _port = random.randint(40001, 49999) + elif "anyip" in _chosen_proxy["http"]: + self.logger.info("use anyip proxy") + _port = random.randint(40001, 49999) else: self.logger.info("use dataimpulse proxy") _port = random.randint(10000, 20000) diff --git a/queue_message/appointmentrequestsender.py b/queue_message/appointmentrequestsender.py index 9b8290f..16cb6a5 100644 --- a/queue_message/appointmentrequestsender.py +++ b/queue_message/appointmentrequestsender.py @@ -204,7 +204,7 @@ class AppointmentRequestSender(threading.Thread): else: self.retrieve_invalidate_urls() self.logger.info("empty list") - time.sleep(20) + time.sleep(30) self.logger.info("will basic_reject method.delivery_tag: " + str(method.delivery_tag)) ch.basic_reject(delivery_tag=method.delivery_tag, requeue=True) else: diff --git a/utils/address_ip.py b/utils/address_ip.py new file mode 100644 index 0000000..4d46542 --- /dev/null +++ b/utils/address_ip.py @@ -0,0 +1,25 @@ +import logging + +import requests + +from proxy_manager.proxy_manager import ProxyManager + + +def get_address_ip(proxy_to_use): + try: + response = requests.get(url="https://api.ipify.org", proxies=proxy_to_use, verify=False, + timeout=15) + print(response.status_code) + if response.status_code == 200: + return response.text + else: + return "" + except Exception as Error: + print(Error) + return "error" + + +if __name__ == '__main__': + logger = logging.getLogger() + proxy_manager = ProxyManager(logger=logger) + print(get_address_ip(proxy_manager.get_proxy_for_appointment_request())) diff --git a/workers/captcha_result_getter.py b/workers/captcha_result_getter.py index 43ad56d..cc4d6cd 100644 --- a/workers/captcha_result_getter.py +++ b/workers/captcha_result_getter.py @@ -105,7 +105,7 @@ class CaptchaResultGetter: return None def get_ch_raw_data_from_js_data(self, js_data: JsDataPojo, old_valid_cookie) -> str: - _tag_version = "4.29.1" + _tag_version = "4.29.2" _raw_data = "jsData={}&eventCounters=%5B%5D&jsType=ch&cid={}&ddk=789361B674144528D0B7EE76B35826&Referer=https%253A%252F%252Frendezvousparis.hermes.com%252Fclient%252Fregister&request=%252Fclient%252Fregister&responsePage=origin&ddv={}".format( js_data.to_url_encoded_json(), old_valid_cookie, _tag_version) print("raw ch data is " + _raw_data) @@ -172,7 +172,7 @@ class CaptchaResultGetter: # _le_js_raw_data = self.get_le_raw_data_from_js_data(js_le_type_data=js_le_type_data, # old_valid_cookie=old_valid_cookie) _cid = get_datadome_cookies(old_valid_cookie) - _raw_data = "jsData={}&eventCounters=%7B%22mousemove%22%3A{}%2C%22click%22%3A{}%2C%22scroll%22%3A{}%2C%22touchstart%22%3A{}%2C%22touchend%22%3A{}%2C%22touchmove%22%3A{}%2C%22keydown%22%3A{}%2C%22keyup%22%3A{}%7D&jsType=le&cid={}&ddk=789361B674144528D0B7EE76B35826&Referer=https%253A%252F%252Frendezvousparis.hermes.com%252Fclient%252Fregister&request=%252Fclient%252Fregister&responsePage=origin&ddv=4.29.1".format( + _raw_data = "jsData={}&eventCounters=%7B%22mousemove%22%3A{}%2C%22click%22%3A{}%2C%22scroll%22%3A{}%2C%22touchstart%22%3A{}%2C%22touchend%22%3A{}%2C%22touchmove%22%3A{}%2C%22keydown%22%3A{}%2C%22keyup%22%3A{}%7D&jsType=le&cid={}&ddk=789361B674144528D0B7EE76B35826&Referer=https%253A%252F%252Frendezvousparis.hermes.com%252Fclient%252Fregister&request=%252Fclient%252Fregister&responsePage=origin&ddv=4.29.2".format( js_le_type_data.to_url_encoded_json(), mousemove_count, click_count, scroll_count, touch_count, touch_count, touch_move, key_count, diff --git a/workers/sender.py b/workers/sender.py index cfa3efc..09ced4e 100644 --- a/workers/sender.py +++ b/workers/sender.py @@ -11,7 +11,7 @@ from models.ReserveResultPojo import ReserveResultPojo, PublishType from models.jsdata_pojo import JsDataPojo from models.result_pojo import RequestResult from queue_message.CookiesPublisher import CookiesPublisher -from workers.proxies_constants import PROXY_LIST_FR +from utils.address_ip import get_address_ip class Sender: @@ -37,11 +37,14 @@ class Sender: firstName=contact.first_name, lastName=contact.last_name, email=contact.mail, passport=contact.passport, ccid=contact.ccid) result.ua = contact.ua + result.current_ip = contact.current_ip if "oxylabs" in self.proxy_to_use["http"]: if "mob" in self.proxy_to_use["http"]: result.proxy = "oxylabs_mob" else: result.proxy = "oxylabs_res" + elif "anyip" in self.proxy_to_use["http"]: + result.proxy = "anyip" else: result.proxy = "data_impulse" result.id = id @@ -95,6 +98,7 @@ class Sender: self.logger.info(response.text) self.logger.info("{}:{}".format(contact.mail, response.url)) contact.ua = js_data.ua + contact.current_ip = get_address_ip(proxy_to_use=proxy_to_use) self.publish_message_to_queue(contact, status=PublishType.SUCCESS, url=response.url, store_type=_selected_store) cookies_to_set = response.headers['set-cookie']