from seleniumimport webdriver
import time
import random
from selenium.webdriver.common.action_chainsimport ActionChains
from selenium.webdriver.common.byimport By
from selenium.webdriver.support.uiimport WebDriverWait
from selenium.webdriver.supportimport expected_conditionsas EC
# 使用firefox的profile屏蔽掉https的影响
profile='C:\\Users\\XXXXX\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\dp0t30sj.ignore_https_check'
browser = webdriver.Firefox(firefox_profile=profile)
browser.implicitly_wait(6)
time.sleep(1)
browser.maximize_window()
XPATH_DICT = {
'login':{
'email':'//*[@id="email"]',
'pwd':'//*[@id="password"]',
'btnLogin':'//*[@id="btnLogin"]'
}
}
URLs = {
'login':'https://XXXXX/portal-uat/login',
'document':'https://XXXXX/portal-uat/document/detail?id={}'
}
browser.get(URLs['login'])
email = webdriver.support.ui.WebDriverWait(browser, 5, 0.5).until(
EC.presence_of_element_located((By.XPATH, XPATH_DICT['login']['email']))
)
email.send_keys('XXXXXX')
# browser.find_element(By.XPATH, '//*[@id="email"]')
browser.find_element(By.XPATH,XPATH_DICT['pwd']).send_keys('XXXX')
browser.find_element(By.XPATH, XPATH_DICT['btnLogin']).click()
for iin range(1000):
try:
doc_id = random.sample([236169,194311,190341,211588],1)[0]
browser.get(URLs['document'].format(doc_id))
# browser.refresh()
except:
pass
time.sleep(30)
ActionChains(browser).move_by_offset(300,160).click().perform()
browser.get_screenshot_as_file('D:\\code\\ZJ\\data\\img\\{}-{}.png'.format(doc_id, i))