Beispiel #1
0
def login_code(cachePath, userId, password):
    global webdriver
    file = pathlib.Path(cachePath)
    flag = file.exists()
    chrome_options = Options()
    chromedriver_path = '/Users/shaurya/Desktop/Shaurya/pyinstagram/webdriver/chromedriver'
    chrome_options.add_argument('--user-data-dir={}'.format(cachePath))
    if args.headless == 'True':
        chrome_options.add_argument("--headless")
    webdriver = webdriver.Chrome(executable_path=chromedriver_path,
                                 options=chrome_options)
    sleep(2)
    print(flag)
    if flag == False:
        print('Cache Doesnot exist')
        webdriver.get(
            'https://www.instagram.com/accounts/login/?source=auth_switcher')
        sleep(3)
        webdriver.maximize_window()
        logger.info("Not Cached: Instagram Site Open")

        username = webdriver.find_element_by_name('username')
        username.send_keys(userId)
        p_word = webdriver.find_element_by_name('password')
        p_word.send_keys(password)
        logger.info("Id {}, Password Entered".format(userId))

        button_login = webdriver.find_element_by_css_selector(
            '#react-root > section > main > div > article > div > div:nth-child(1) > div > form > div:nth-child(4)'
        )
        button_login.click()
        sleep(3)
    else:
        webdriver.get('https://www.instagram.com')
        sleep(3)
        webdriver.maximize_window()
        logger.info("Cached: Instagram Site Open")

    return webdriver
Beispiel #2
0
        '''
        Return a list of all fields error messages
        :return: a list of text
        '''
        logger.info('Get error messages displayed on fields')
        self.wait_UI(self.__field_error_loc)
        field_errors = self.find_elements(*self.__field_error_loc)
        error_messages = []
        for error in field_errors:
            error_messages.append(error.text)
        return error_messages


if __name__ == '__main__':
    webdriver = webdriver.Firefox()
    webdriver.maximize_window()
    webdriver.implicitly_wait(10)
    login_page = LoginPage(webdriver)
    login_page.login()
    menu_bar = MenuBar(webdriver)
    menu_bar.wait_UI(menu_bar.menu_button_loc)
    menu_bar.action_toggle_menu()
    time.sleep(1)
    menu_bar.action_expand_app_group('Supply Chain Advantage')
    menu_bar.action_expand_menu('Advantage Dashboard')
    menu_bar.action_expand_menu('searchTest', False, 'search test')
    searchPage = SearchPage(webdriver)
    print(searchPage.get_page_title())
    time.sleep(1)
    print(searchPage.get_all_labels_name(1))
    searchPage.action_searchlike_input('searchLike', 'abc', 2, 'Exactly')
Beispiel #3
0
def setUpBrowser(browser, webdriver):
    print("Run " + browser + " start at: " + str(datetime.datetime.now()))
    print("Chrome envirerment set up")
    print("-------------------------------------")
    webdriver.implicitly_wait(20)
    webdriver.maximize_window()
Beispiel #4
0
#__author: yaomingxi
#__date: 2019-08-03

from selenium import webdriver as dr
from time import sleep as sl

from selenium.webdriver.common.by import By

dr = dr.Safari()
dr.maximize_window()

url = 'https://www.baidu.com/'
dr.get(url)

#wb = dr.find_element_by_xpath('/html/body/div/div/div/div/div/form/span/input')
#wb.send_keys('selenium webdriver')

sl(1)
#cl = dr.find_element_by_link_text('新闻')

#cl = dr.find_element_by_xpath('/html/body/div/div/div/div[3]/a[1]')
#cl.click()
#利用元素属性定位
#cl1 = dr.find_element_by_xpath("//input[@id='kw']")
#cl1.send_keys('selenium webdriver')

#不指定标签名,可以用*号代替
#cl2 = dr.find_element_by_xpath("//*[@name='tj_trnews']")
#cl2.click()

#层级于属性组合