本文整理汇总了Python中selenium.webdriver.common.action_chains.ActionChains.reset_actions方法的典型用法代码示例。如果您正苦于以下问题:Python ActionChains.reset_actions方法的具体用法?Python ActionChains.reset_actions怎么用?Python ActionChains.reset_actions使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类selenium.webdriver.common.action_chains.ActionChains
的用法示例。
在下文中一共展示了ActionChains.reset_actions方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: visit_pages
# 需要导入模块: from selenium.webdriver.common.action_chains import ActionChains [as 别名]
# 或者: from selenium.webdriver.common.action_chains.ActionChains import reset_actions [as 别名]
def visit_pages(iteration, target_url):
#search the next valid result
while (iteration > 0):
actions = ActionChains(driver);
actions.send_keys(u'\ue015');
actions.perform();
actions.reset_actions();
time.sleep(TIMEOUT_BROWSING_THROUGH_RESULTS);
iteration = iteration-1;
actions = ActionChains(driver);
actions.send_keys(u'\ue007');
actions.perform();
actions.reset_actions();
time.sleep(WAITING_TIME_FOR_PAGE_LOAD);
url = driver.current_url;
TIME_SPENT_ON_THE_PAGE = 0;
parsed_url = url_parser( url );
logfile.write(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Visiting domain " + parsed_url + "\n");
print(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Visiting domain " + parsed_url + "\n");
if parsed_url == target_url:
TIME_SPENT_ON_THE_PAGE = 20;
logfile.write(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Target domain found\n");
print(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Target domain found\n");
user_browses_internal_links(NUMBER_OF_INTERNAL_LINKS, TIME_SPENT_ON_A_LINK_WHILE_BROWSING, driver);
user_browses_external_links(NUMBER_OF_EXTERNAL_LINKS, TIME_SPENT_ON_A_LINK_WHILE_BROWSING, driver);
else:
TIME_SPENT_ON_THE_PAGE = 1;
time.sleep(TIME_SPENT_ON_THE_PAGE);
driver.back();
return;
示例2: scroll
# 需要导入模块: from selenium.webdriver.common.action_chains import ActionChains [as 别名]
# 或者: from selenium.webdriver.common.action_chains.ActionChains import reset_actions [as 别名]
def scroll(self, direction):
chain = ActionChains(self.driver)
if direction == "down":
scroller_id = "after"
elif direction == "up":
scroller_id = "before"
else:
raise ValueError(
"Scrolling direction must be 'down' or 'up', not %s!" % direction)
for _ in range(10):
scroller = Button(
xpath='//div [starts-with(@id, "menu") and contains(@id, "%s-scroller")]' % scroller_id,
driver=self.driver).get_element()
if 'x-box-scroller-disabled' not in scroller.get_attribute('class'):
print("Scrolling %s" % direction)
chain.click_and_hold(scroller)
chain.perform()
time.sleep(1)
else:
chain.reset_actions()
chain.release()
chain.perform()
break
示例3: HackGeetest
# 需要导入模块: from selenium.webdriver.common.action_chains import ActionChains [as 别名]
# 或者: from selenium.webdriver.common.action_chains.ActionChains import reset_actions [as 别名]
class HackGeetest():
def __init__(self):
desired_capabilities = dict(DesiredCapabilities.PHANTOMJS)
desired_capabilities["phantomjs.page.settings.userAgent"] = ('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36')
self.browser=webdriver.PhantomJS('./phantomjs',desired_capabilities=desired_capabilities)
#self.browser=webdriver.Chrome('./chromedriver')
self.browser.maximize_window()
self.browser.implicitly_wait(10)
self.action=ActionChains(self.browser)
self.threshold=10
def get_captcha_img(self):
slider_element=self.browser.find_element_by_class_name('gt_slider_knob')
item=self.browser.find_element_by_class_name('gt_box')
self.action.click_and_hold(on_element=slider_element).perform()
self.action.reset_actions()
time.sleep(0.3)
screenshot=self.browser.get_screenshot_as_png()
left = item.location['x']
right = left + item.size['width']
top = item.location['y']
bottom = top + item.size['height']
img=Image.open(BytesIO(screenshot))
captcha=img.crop((left,top,right,bottom))
return captcha
def cal_slider_offset(self):
captcha=self.get_captcha_img()
captcha.show()
image=captcha.convert('L')
flag=0
for x in range(60,image.size[0]):
sum_pix=0
for y in range(image.size[1]):
pix=image.getpixel((x,y))
if pix<55:
sum_pix+=1
print(x,sum_pix)
if sum_pix>self.threshold:
return x-flag
if sum_pix==0:
flag=0
else:
flag+=1
if flag>4:
return x-flag
return -1
def load_page(self,url):
self.browser.get(url)
def get_track(self,offset):
line=[]
while offset>5:
num=random.randint(1,4)
line.append(num)
offset-=num
for i in range(offset):
line.append(1)
return line
def slide_by_offset(self,offset):
element=self.browser.find_element_by_class_name('gt_slider_knob')
line=self.get_track(offset)
for x in line:
self.action.move_by_offset(x,random.randint(-5,3)).perform()
self.action.reset_actions()
time.sleep(random.randint(2,15)/100)
self.action.release().perform()
time.sleep(2)
gt_info_text=self.browser.find_element_by_class_name('gt_info_text').text
print(gt_info_text)
screenshot=self.browser.get_screenshot_as_png()
img=Image.open(BytesIO(screenshot))
img.show()
def quit(self):
self.browser.quit()
示例4: while
# 需要导入模块: from selenium.webdriver.common.action_chains import ActionChains [as 别名]
# 或者: from selenium.webdriver.common.action_chains.ActionChains import reset_actions [as 别名]
numberOfTabs = 1;
j=1;
while(numberOfTabs<=NUMBER_OF_PAGE_RESULTS_CHECKED):
i = 1;
if numberOfTabs == 1:
NUMBER_OF_RESULTS_USED = NUMBER_OF_RESULTS_PER_PAGE_FIRST;
else:
NUMBER_OF_RESULTS_USED = NUMBER_OF_RESULTS_PER_PAGE;
while( i < NUMBER_OF_RESULTS_USED ):
visit_pages(i, target_url);
time.sleep(TIMEOUT_AFTER_VISITING_PAGE);
i = i + 1;
numberOfTabs = numberOfTabs + 1;
actions = ActionChains(driver);
actions.key_down(Keys.ALT).send_keys(u'\u004E');
actions.perform();
actions.reset_actions();
time.sleep(5);
logfile.write(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Ending session...\n");
print(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Ending session...\n");
time.sleep(30);
logfile.write(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Closing the browser...\n");
print(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Closing the browser...\n");
driver.close();
logfile.write(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Closing TorGuard...\n");
print(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Closing TorGuard...\n");
os.system("TASKKILL /F /IM TorGuardDesktopQt.exe");
logfile.write(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Closing the logfile...\n");
print(strftime("%Y-%m-%d %H:%M:%S ", gmtime()) + "Closing the logfile...\n");
logfile.close();