How to move range input using Selenium (in Python)? -
i have been using python selenium quite time , have been happy until got new requirement supposed set sliders on web-page (here) values , let page run scripts update page results.
my problem how set slider min , max knobs () using python selenium. have tried example here , code below.
#! /usr/bin/python2.7 import os import time selenium import webdriver selenium.webdriver.common.keys import keys selenium.webdriver import actionchains import datetime import time import mysql.connector def check2(driver, slidebar, sliderknob, percent): height = slidebar.size['height'] width = slidebar.size['width'] move = actionchains(driver); # slidebar = driver.find_element_by_xpath("//div[@id='slider']/a") if width > height: #highly horizontal slider print "off set: ", percent * width / 100 move.click_and_hold(sliderknob).move_by_offset(500, 0).release().perform() else: #highly vertical slider move.click_and_hold(sliderknob).move_by_offset(percent * height / 100, 0).release().perform() driver.switch_to_default_content() chrome_options = webdriver.chromeoptions() chrome_options.add_argument('--no-proxy-server') os.environ["path"] += ":/home/mike/software" os.environ["path"] += ":/usr/local/bin/" try: driver = webdriver.chrome() driver.get("http://99.243.40.11/#/housesold") els = driver.find_elements_by_xpath('//input[@class="input high"]') print 'els.len = ', len(els) e = els[0] ens = driver.find_elements_by_xpath('//span[@class="pointer high"]') en = ens[0] check2(driver, e, en, 70) time.sleep(20) finally: driver.close()
unfortunately not working me. please let me know if know of clue. appreicate help.
regards,
well think can follow last comment's , give clue.
actually did , got results. first need use selenium ide find knob move , sth below move below.
let me know if helps you.
cheers,
try: driver = webdriver.chrome() driver.get("http://99.243.40.11/#/housesold") en = driver.find_element_by_xpath("//span[6]") move = actionchains(driver) move.click_and_hold(en).move_by_offset(10, 0).release().perform() time.sleep(5) move.click_and_hold(en).move_by_offset(10, 0).release().perform() time.sleep(5) move.click_and_hold(en).move_by_offset(10, 0).release().perform() time.sleep(5) finally: driver.close()
Comments
Post a Comment