diff --git a/queue_message/appointmentrequestsendor.py b/queue_message/appointmentrequestsendor.py index c73da19..ea4e905 100644 --- a/queue_message/appointmentrequestsendor.py +++ b/queue_message/appointmentrequestsendor.py @@ -105,7 +105,7 @@ class AppointmentRequestSendor(threading.Thread): self.contact_list = filter_contacts(self.contact_list) # remove already booked contacts random.shuffle(self.contact_list) - if len(self.contact_list) > 0 and is_open() and _message_count > 40: + if len(self.contact_list) > 0 and is_open() and _message_count > 100: captchaResultGetter = CaptchaResultGetter() print("contact number is {}".format(len(self.contact_list))) self.contact_list = filter_contacts(self.contact_list) diff --git a/request_sender.py b/request_sender.py index 8dca3f0..9ff5463 100644 --- a/request_sender.py +++ b/request_sender.py @@ -7,10 +7,10 @@ from db.mongo_manager import MONGO_STORE_MANAGER from excel_reader import read_contacts from models.contact_pojo import ContactPojo from queue_message.CookiesPublisher import CookiesPublisher, REQUEST_DATA_QUEUE_DE -from queue_message.appointmentrequestsendor import AppointmentRequestSendor +from queue_message.appointmentrequestsendor import AppointmentRequestSendor, REQUEST_DATA_QUEUE from utiles import is_time_between from workers.captcha_result_getter import CaptchaResultGetter, HERMES_REGISTER -from workers.proxies_constants import PROXY_LIST_DE +from workers.proxies_constants import PROXY_LIST_DE, PROXY_LIST_FR from workers.sender import Sender IPFIY = 'http://api.ipify.org' @@ -75,11 +75,11 @@ def send_appointment_request(message_queue_name, contacts_file_path): _cookiesPublisher = CookiesPublisher(queue_name=message_queue_name) _cookiesPublisher.set_up_connection() contact_list = read_contacts(contacts_file_path) - receiver = AppointmentRequestSendor(sub_contact_list=contact_list, proxy_to_use_list=PROXY_LIST_DE, - queue_name=REQUEST_DATA_QUEUE_DE, + receiver = AppointmentRequestSendor(sub_contact_list=contact_list, proxy_to_use_list=PROXY_LIST_FR, + queue_name=message_queue_name, cookiesPublisher=_cookiesPublisher) receiver.run() if __name__ == '__main__': - send_appointment_request(REQUEST_DATA_QUEUE_DE, '/Users/lpan/Desktop/08_01_24_valid_de.xlsx') + send_appointment_request(REQUEST_DATA_QUEUE, '/Users/rdv/Desktop/yahoo_aol_valid_26-1.xlsx') diff --git a/workers/link_validator.py b/workers/link_validator.py index dbfe8b3..1a9d947 100644 --- a/workers/link_validator.py +++ b/workers/link_validator.py @@ -12,6 +12,8 @@ from queue_message.CookiesPublisher import CookiesPublisher, REQUEST_DATA_QUEUE_ from queue_message.appointmentrequestsendor import QUEUE_HOST, REQUEST_DATA_QUEUE, credentials from workers.proxies_constants import PROXY_LIST_FR +DOUBLE_MESSAGE = "Une demande de rendez-vous a déjà été enregistrée avec ces coordonnées" + class LinkValidator(threading.Thread): @@ -77,6 +79,21 @@ class LinkValidator(threading.Thread): self.cookiesPublisher.publish_body(new_coolies_str) self.cookie_str = new_coolies_str return True + elif DOUBLE_MESSAGE in _content: + print(response.url) + MONGO_STORE_MANAGER.link_validated_for_result(response.url, linkPojo, is_duplicated=True) + # set new cookies + _cookies_to_set = response.headers['set-cookie'] + self.cookie.load(_cookies_to_set) + new_cookies = {k: v.value for k, v in self.cookie.items()} + new_coolies_str = "" + for key in new_cookies: + new_coolies_str = new_coolies_str + key + "=" + new_cookies[key] + ";" + print("will publish to queue {}".format(new_coolies_str)) + # upload the cookie to queue + self.cookiesPublisher.publish_body(new_coolies_str) + self.cookie_str = new_coolies_str + return True else: return False else: diff --git a/workers/proxies_constants.py b/workers/proxies_constants.py index 6702a83..15fa806 100644 --- a/workers/proxies_constants.py +++ b/workers/proxies_constants.py @@ -41,6 +41,6 @@ DE_PROXY_RES = { # FR_PROXY_MOBILE # FR_PROXY_RES # PROXY_LIST = [FR_PROXY_MOBILE, FR_PROXY_RES, DE_PROXY_RES, DE_PROXY_MOBILE, ES_PROXY_MOBILE, IT_PROXY_MOBILE] -PROXY_LIST_FR = [FR_PROXY_MOBILE, FR_PROXY_MOBILE_2, FR_PROXY_RES_2] +PROXY_LIST_FR = [FR_PROXY_MOBILE_2, FR_PROXY_MOBILE, FR_PROXY_RES_2] # PROXY_LIST = [FR_PROXY_MOBILE, FR_PROXY_RES] PROXY_LIST_DE = [DE_PROXY_RES, DE_PROXY_MOBILE] diff --git a/workers/sender.py b/workers/sender.py index e242695..7e6b9d4 100644 --- a/workers/sender.py +++ b/workers/sender.py @@ -61,7 +61,7 @@ class Sender: 'Accept-Language': 'fr-FR,fr;q=0.6'} data = {'check': '', '_csrf': _csrf, 'prefer': '', 'surname': contact.last_name.capitalize(), 'name': contact.first_name.capitalize(), - 'phone_country': "FR", 'phone_number': contact.phone, 'email': contact.mail, + 'phone_country': "FR", 'phone_number': "+33 " + contact.phone, 'email': contact.mail, 'passport_id': contact.passport, 'processing': 'on', 'cgu': 'on'} print(data) try: