Skip to content
This repository has been archived by the owner on Aug 26, 2024. It is now read-only.

get error message when try to login #2

Open
SaberTawfiq opened this issue Mar 3, 2024 · 5 comments
Open

get error message when try to login #2

SaberTawfiq opened this issue Mar 3, 2024 · 5 comments

Comments

@SaberTawfiq
Copy link

SaberTawfiq commented Mar 3, 2024

1
2

get error message when try to login
https://visa.vfsglobal.com/gbr/en/mlt/login
after add email and password
going to solve the g-captcha
after solve and be true
click on sign in button get this error
"Mandatory field cannot be left empty"
how to fix that
https://www.mediafire.com/file/42uup2lpml1j9v2/Before__Connexion_VFS_Global.html/file
https://www.mediafire.com/file/j33azoraavxxwrw/After_Connexion_VFS_Global.html/file

Function to handle Google Captcha

def Captcha(sb, excel_file_path):
# Check for Google Captcha element
sb.driver.switch_to.default_content()
if sb.is_element_present('//*[@id="g-recaptcha-response"]'):
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.LIGHTWHITE_EX + f"{current_time} - Google Captcha element found")
wait_recaptcha_to_be_solved(sb, excel_file_path)
else:
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.YELLOW + f"{current_time} - Google Captcha element not found. Continuing...")
sb.driver.switch_to.default_content()
# Add any further actions or conditions here if needed
def wait_recaptcha_to_be_solved(sb, excel_file_path):
try:
sb.is_element_present('iframe[title="reCAPTCHA"]')
except:
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.BLACK + f"{current_time} - ERROR: WE CANNOT SWITCH TO RECAPTCHA IFRAME")
else:
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.GREEN + f"{current_time} - NOTE: PRESENCE OF RECAPTCHA")
sb.driver.uc_switch_to_frame("iframe")
print(colorama.Fore.YELLOW + f"{current_time} - WAITING FOR RECAPTCHA TO BE SOLVED...")
for i in range(100):
try:
recaptcha = sb.is_element_present('#recaptcha-anchor[aria-checked="true"]')
except:
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.BLUE + f"{current_time} - WARNING: WAITING FOR RECAPTCHA TO BE SOLVED {100-i}...")
sleep(5)
else:
if recaptcha: # Checking if recaptcha is True
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.MAGENTA + f"{current_time} - NOTE: RECAPTCHA HAS BEEN SOLVED")
sb.driver.switch_to.default_content()
return True
else:
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.CYAN + f"{current_time} - WARNING: WAITING FOR RECAPTCHA TO BE SOLVED {100-i}...")
sleep(5)
sb.driver.switch_to.default_content()
return False

Cookies Button

def remove_destraction(sb, excel_file_path):
destractions = 0
if destractions != 0:
return
try:
sb.click('//[@id="onetrust-close-btn-container"]/button')
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.BLUE + f"{current_time} - Cookies Click Button")
except:
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.BLUE + f"{current_time} - NOTE: NO DESTRACTION THERE")
else:
sb.click('//
[@id="onetrust-close-btn-container"]/button')
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.WHITE + f"{current_time} - NOTE: DESTRACTION HAS BEEN REMVOED")
destractions = 1
return True

FILL EMAIL AND PASSWORD LOGIN PAGE

def login(sb, excel_file_path):
check_notification(sb, excel_file_path)
CloudFlare = '/html/body/app-root/div/div/app-login/section/div/div/mat-card/form/app-cloudflare-captcha-container/div'
if sb.is_element_present(CloudFlare):
sb.highlight(CloudFlare)
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.WHITE + f"{current_time} - CloudFlare Captcha Found")
else:
current_time = datetime.now().strftime("%I:%M:%S %p")
print(colorama.Fore.YELLOW + f"{current_time} - CloudFlare Captcha not found.")

check_notification(sb, excel_file_path)

# Search For Email Place and import 
sb.press_keys("#mat-input-0", str(email))
print(colorama.Fore.RED + f"{current_time} - Email Added")
sleep(1)

# Find the password input field and enter the password
sb.press_keys("#mat-input-1", str(password))
print(colorama.Fore.WHITE + f"{current_time} - Password Added")
sleep(1)
sb.driver.uc_switch_to_frame("iframe") 
if sb.is_element_present("#challenge-stage"):
    sleep(1)
    sb.driver.switch_to.default_content()
    submit_button_CloudFlare(sb, excel_file_path)
else:
    sb.driver.switch_to.default_content()
    sleep(1)
    if sb.is_element_present('iframe[title="reCAPTCHA"]'):
        sleep(1)
        sb.driver.switch_to.default_content()
        submit_button_Gcaptcha(sb, excel_file_path)

def submit_button_CloudFlare(sb, excel_file_path):
try:
sb.click('body > app-root > div > div > app-login > section > div > div > mat-card > form > button')
current_time = datetime.now().strftime("%I:%M:%S %p") # Update current_time
print(colorama.Fore.MAGENTA + f"{current_time} - Sign In (Button) click")
check_notification(sb, excel_file_path)
except:
print(colorama.Fore.MAGENTA + f"{current_time} - ERROR: WE CANNOT FIND THE SUBMIT BUTTON ")
# Check for the error message
if sb.is_text_visible("body > app-root > div > div > app-login > section > div > div > mat-card > form > div.errorMessage.ng-star-inserted > div"):
current_time = datetime.now().strftime("%I:%M:%S %p") # Update current_time
print(colorama.Fore.WHITE + f"{current_time} - 'Mandatory field cannot be left blank' error detected. Restarting the process.")
sb.driver.quit() # Close the browser
main_process()
else:
pass
click_new_booking(sb, excel_file_path)
sleep(2)
return True
def submit_button_Gcaptcha(sb, excel_file_path):
sleep(1)
try:
submit_button = sb.driver.uc_click('.mat-focus-indicator.btn.mat-btn-lg.btn-block.btn-brand-orange.mat-stroked-button.mat-button-base.ng-star-inserted'.replace(" ","."))
print("Notice: SUBMIT BUTTON Clicked")
except Exception as e:
print(f"ERROR: {e}")
return False

if submit_button is not None:
    if len(submit_button) > 0:  # Check if the list is not empty
        try:
            submit_button[0].click()
        except Exception as e:
            print(f"ERROR: {e}")
            return False
    else:
        print("ERROR: SUBMIT BUTTON LIST IS EMPTY")
        return False
else:
    print("ERROR: SUBMIT BUTTON NOT FOUND")
    return False

# Check for the error message
if sb.is_text_visible("Mandatory field cannot be left empty"):
    print("Mandatory field cannot be left empty")
    return False

return True


try:
    sb.click('.mat-focus-indicator.btn.mat-btn-lg.btn-block.btn-brand-orange.mat-stroked-button.mat-button-base.ng-star-inserted'.replace(" ","."))
    current_time = datetime.now().strftime("%I:%M:%S %p")  # Update current_time
    print(colorama.Fore.MAGENTA + f"{current_time} - Sign In (Button) click")
    check_notification(sb, excel_file_path)
except:
    print(colorama.Fore.MAGENTA + f"{current_time} -  ERROR: WE CANNOT FIND THE SUBMIT BUTTON ")
# Check for the error message
if sb.is_text_visible("body > app-root > div > div > app-login > section > div > div > mat-card > form > div.errorMessage.ng-star-inserted > div"):
    current_time = datetime.now().strftime("%I:%M:%S %p")  # Update current_time
    print(colorama.Fore.WHITE + f"{current_time} - 'Mandatory field cannot be left blank' error detected. Restarting the process.")
    sb.driver.quit()  # Close the browser
    main_process()
else:
    pass
click_new_booking(sb, excel_file_path)
sleep(2)
return True
@chilldude8
Copy link

Hey boss, can u book appointment dates?

@SaberTawfiq
Copy link
Author

Hey boss, can u book appointment dates?

yep but can't solve gcaptcha or mandatory field error

@chilldude8
Copy link

Can I have your WhatsApp number?

@chilldude8
Copy link

I guess it's the site's error, but can't even fill it manually it always shows up like that

@OdiumPro
Copy link

OdiumPro commented Mar 5, 2024

You should send a pull request with the changes you made so that they can look further into the issues.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants