Check if streak protection expired
This commit is contained in:
parent
df256f2405
commit
c53125479e
93
V6.py
93
V6.py
|
@ -199,42 +199,67 @@ def do_poll():
|
|||
# Find each playable card and tries to click on it to earn points
|
||||
def all_cards():
|
||||
driver = config.WebDriver.driver
|
||||
|
||||
def check_welcome_tour() -> bool:
|
||||
if "rewards.bing.com/welcometour" not in driver.current_url:
|
||||
return False
|
||||
|
||||
info("Popup 'Explorer le programme' reçue")
|
||||
wait_until_visible(By.ID, "welcome-tour", timeout=5, browser=driver)
|
||||
custom_sleep(1.5)
|
||||
|
||||
welcome_tour = driver.find_element(By.ID, "welcome-tour")
|
||||
interest_button_box = welcome_tour.find_element(By.CLASS_NAME, "interest-buttons")
|
||||
interests = interest_button_box.find_elements(By.CLASS_NAME, "ng-binding")
|
||||
debug("Got the following interests: " + str(interests))
|
||||
random.choice(interests).click() # Choose interest
|
||||
custom_sleep(1.5)
|
||||
|
||||
claim_button = welcome_tour.find_element(By.ID, "claim-button")
|
||||
claim_button.click() # submit
|
||||
custom_sleep(1.5)
|
||||
return True
|
||||
|
||||
def check_streak_protection() -> bool:
|
||||
|
||||
def check_popups() -> bool:
|
||||
"""
|
||||
Ne perdez plus jamais votre série !
|
||||
Check various annoying popups
|
||||
"""
|
||||
try:
|
||||
streak_protection_close = driver.find_element(By.ID, "streak-protection-popup-close-cross")
|
||||
streak_protection_activate = driver.find_elements(By.CLASS_NAME, "earningPagePopUpPopUpSelectButton")
|
||||
streak_protection_activate[0].click()
|
||||
info("Popup 'Streak Protection' reçue")
|
||||
def check_welcome_tour() -> bool:
|
||||
if "rewards.bing.com/welcometour" not in driver.current_url:
|
||||
return False
|
||||
|
||||
info("Popup 'Explorer le programme' reçue")
|
||||
wait_until_visible(By.ID, "welcome-tour", timeout=5, browser=driver)
|
||||
custom_sleep(1.5)
|
||||
|
||||
welcome_tour = driver.find_element(By.ID, "welcome-tour")
|
||||
interest_button_box = welcome_tour.find_element(By.CLASS_NAME, "interest-buttons")
|
||||
interests = interest_button_box.find_elements(By.CLASS_NAME, "ng-binding")
|
||||
debug("Got the following interests: " + str(interests))
|
||||
random.choice(interests).click() # Choose interest
|
||||
custom_sleep(1.5)
|
||||
|
||||
claim_button = welcome_tour.find_element(By.ID, "claim-button")
|
||||
claim_button.click() # submit
|
||||
custom_sleep(1.5)
|
||||
return True
|
||||
except (exceptions.NoSuchElementException, exceptions.ElementNotInteractableException, IndexError):
|
||||
# les éléments sont présents dans le DOM même quand la popup n'est pas visible apparemment
|
||||
return False
|
||||
|
||||
def check_streak_protection() -> bool:
|
||||
"""
|
||||
Ne perdez plus jamais votre série !
|
||||
"""
|
||||
try:
|
||||
streak_protection_close = driver.find_element(By.ID, "streak-protection-popup-close-cross")
|
||||
streak_protection_activate = driver.find_elements(By.CLASS_NAME, "earningPagePopUpPopUpSelectButton")
|
||||
streak_protection_activate[0].click()
|
||||
info("Popup 'Streak Protection' reçue")
|
||||
custom_sleep(1.5)
|
||||
|
||||
return True
|
||||
except (exceptions.NoSuchElementException, exceptions.ElementNotInteractableException, IndexError):
|
||||
# les éléments sont présents dans le DOM même quand la popup n'est pas visible apparemment
|
||||
return False
|
||||
|
||||
def check_streak_protection_expired() -> bool:
|
||||
"""
|
||||
Non, vous avez utilisé tous vos jours de protection contre les séries !
|
||||
"""
|
||||
try:
|
||||
streak_protection_close = driver.find_element(By.ID, "streak-protection-popup-close-cross")
|
||||
ok_sad_button = driver.find_elements(By.CLASS_NAME, "dashboardPopUpPopUpSelectButton")
|
||||
ok_sad_button[0].click()
|
||||
info("Popup 'Streak Protection fully used' reçue")
|
||||
custom_sleep(1.5)
|
||||
|
||||
return True
|
||||
except (exceptions.NoSuchElementException, exceptions.ElementNotInteractableException, IndexError):
|
||||
return False
|
||||
|
||||
return (
|
||||
check_welcome_tour()
|
||||
or check_streak_protection()
|
||||
or check_streak_protection_expired()
|
||||
)
|
||||
|
||||
driver.get("https://rewards.bing.com")
|
||||
wait_until_visible(By.CLASS_NAME, "c-card-content", 10, driver)
|
||||
|
@ -289,8 +314,7 @@ def all_cards():
|
|||
activity = ""
|
||||
|
||||
custom_sleep(1.5)
|
||||
check_welcome_tour()
|
||||
check_streak_protection()
|
||||
check_popups()
|
||||
driver.execute_script("arguments[0].scrollIntoView();", card_list[i])
|
||||
custom_sleep(1.5)
|
||||
card_list[i].click()
|
||||
|
@ -307,8 +331,7 @@ def all_cards():
|
|||
if "mee-icon-AddMedium" not in card_list[i].get_attribute("innerHTML"):
|
||||
continue
|
||||
|
||||
check_welcome_tour()
|
||||
check_streak_protection()
|
||||
check_popups()
|
||||
driver.execute_script("arguments[0].scrollIntoView();", card_list[i])
|
||||
card_list[i].click()
|
||||
|
||||
|
|
Loading…
Reference in New Issue