31 lines
1.2 KiB
Python
31 lines
1.2 KiB
Python
from playwright.sync_api import Playwright, sync_playwright, expect, Page
|
|
from logging import *
|
|
|
|
|
|
def login(page: Page, mail: str, pwd: str) -> None:
|
|
page.goto("https://rewards.bing.com")
|
|
page.wait_for_load_state('load')
|
|
if page.url == "https://rewards.bing.com/":
|
|
info("Logged in via cookies")
|
|
return
|
|
else:
|
|
info("logging in")
|
|
page.get_by_placeholder("Email, phone, or Skype").click()
|
|
page.get_by_placeholder("Email, phone, or Skype").fill(mail)
|
|
page.get_by_placeholder("Email, phone, or Skype").press("Enter")
|
|
page.get_by_placeholder("Password").click()
|
|
page.get_by_placeholder("Password").fill(pwd)
|
|
page.get_by_placeholder("Password").press("Enter")
|
|
page.get_by_label("Don't show this again").check()
|
|
page.get_by_role("button", name="Yes").click()
|
|
page.wait_for_url("https://rewards.bing.com/")
|
|
page.wait_for_load_state('load')
|
|
page.goto("https://bing.com")
|
|
page.get_by_role("link", name="Sign in").click()
|
|
page.get_by_role("link", name="Accept").click()
|
|
page.wait_for_load_state('load')
|
|
page.wait_for_timeout(3000)
|
|
page.goto("https://rewards.bing.com")
|
|
page.wait_for_load_state('load')
|
|
info("Logged in via password.")
|