Esempio n. 1
0
    def login(self, y, x):
        chrome_options = getproxy_uk.getpro()
        dr = webdriver.Chrome(options=chrome_options)
        dr.set_page_load_timeout(70)
        dr.set_window_size(300, 300)
        dr.set_window_position(y=y, x=x)
        url = 'https://www.amazon.co.uk/ap/signin?_encoding=UTF8&ignoreAuthState=1&openid.assoc_handle=gbflex&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.mode=checkid_setup&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0&openid.ns.pape=http%3A%2F%2Fspecs.openid.net%2Fextensions%2Fpape%2F1.0&openid.pape.max_auth_age=0&openid.return_to=https%3A%2F%2Fwww.amazon.co.uk%2F%3Fref_%3Dnav_signin&switch_account='
        dr.get(url)
        try:
            if 'Sign in' in dr.page_source:
                amil = dr.find_element_by_id('ap_email')
                amil_code = self.data_tool.get_reg_info(
                    'amil_num', self.info_id)
                amil.send_keys(amil_code)
                wd = dr.find_element_by_id('ap_password')
                # wd_code = self.data_tool.get_reg_info('login_wd', self.info_id)
                wd_code = amil_code[:5] + '123'
                wd.send_keys(wd_code)
                remember = dr.find_element_by_name('rememberMe')
                remember.click()
                login = dr.find_element_by_id('signInSubmit')
                login.click()
                firstname = self.data_tool.get_name(self.info_id).split(' ')[0]
                if firstname in dr.page_source:
                    self.save_cookies(dr, wd_code)
                info1 = 'Thank you'

                info2 = 'Verification needed'
                if info2 in dr.page_source:
                    sub = dr.find_element_by_id('continue')
                    sub.click()
                    amil_info = dr.find_element_by_name('code')
                    amil_wd = self.data_tool.get_reg_info(
                        'amil_wd', self.info_id)
                    vir_code = get_vir_code(amil_code, amil_wd)
                    amil_info.send_keys(vir_code)
                    sub = dr.find_element_by_class_name('a-button-input')
                    sub.click()
                    if firstname in dr.page_source:
                        self.save_cookies(dr, wd_code)

                if info1 in dr.page_source:
                    name = dr.find_element_by_name('dcq_question_subjective_1')
                    name_wd = self.data_tool.get_name(self.info_id)
                    name.send_keys(name_wd)
                    sub = dr.find_element_by_name('cvfDcqAction')
                    sub.click()
                    if firstname in dr.page_source:
                        self.save_cookies(dr, wd_code)
                return
        except:
            # self.data_tool.update_state(self.info_id)
            dr.quit()
            return
Esempio n. 2
0
 def test_selenium(self):
     driver = webdriver.Chrome(
         executable_path='/Users/jacja/Downloads/chromedriver')
     driver.get("http://www.python.org")
     self.assertIn("Python", driver.title)
     elem = driver.find_element_by_name("q")
     elem.clear()
     elem.send_keys("pycon")
     elem.send_keys(Keys.RETURN)
     self.assertNotIn("No results found.", driver.page_source)
     driver.close()
def test_create_account_failed():
    driver = webdriver.Chrome(ChromeDriverManager().install())
    driver.maximize_window()
    driver.get("http://seleniumdemo.com/?page_id=7")
    driver.find_element(
        By.ID, "reg_email").send_keys("*****@*****.**")
    driver.find_element(By.ID,
                        "reg_password").send_keys("testeroprogramowaniapython")
    driver.find_element(By.ID, "reg_password").send_keys(Keys.ENTER)
    msg = 'An account is already registered with your email address. Please log in.'
    assert msg in driver.find_element_by_xpath(
        "//ul[@class='woocommerce-error']//li").text
Esempio n. 4
0
 def __init__(self, driver: WebDriver = None):
     # 让python编译器知道有一个实例变量:driver
     self.driver = None
     if driver is None:
         # 如果发现driver是空,就服用已有的浏览器
         opts = webdriver.ChromeOptions()
         opts.debugger_address = "127.0.0.1:9222"
         self.driver = webdriver.Chrome(options=opts)
         # 隐式等待,解决元素加载过慢问题
         self.driver.implicitly_wait(3)
     else:
         self.driver = driver
def test_create_account_passed():
    email = str(random.randint(0,
                               1000)) + "*****@*****.**"
    driver = webdriver.Chrome(ChromeDriverManager().install())
    driver.maximize_window()
    driver.get("http://seleniumdemo.com/?page_id=7")
    driver.find_element(By.ID, "reg_email").send_keys(email)
    driver.find_element(By.ID,
                        "reg_password").send_keys("testeroprogramowaniapython")
    driver.find_element(By.ID, "reg_password").send_keys(Keys.ENTER)
    msg = 'An account is already registered with your email address. Please log in.'

    assert driver.find_element(By.LINK_TEXT, "Logout").is_displayed()