Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在页面上使用滑块进行Web刮取_Python_Selenium - Fatal编程技术网

Python 在页面上使用滑块进行Web刮取

Python 在页面上使用滑块进行Web刮取,python,selenium,Python,Selenium,我想从中提取数据。但是,我不知道如何处理滑块,以便将其移动到两端 从源头上看,我想我可能必须找到一种方法,将左右样式更改为0% <div class="noUi-connect" style="left: 0%; right: 0%;"></div> 你知道怎么做吗?使用From/to输入字段,然后使用.sendkeys。尝试一下: from selenium.webdriver.common.keys import Keys

我想从中提取数据。但是,我不知道如何处理滑块,以便将其移动到两端

从源头上看,我想我可能必须找到一种方法,将左右样式更改为0%

<div class="noUi-connect" style="left: 0%; right: 0%;"></div>


你知道怎么做吗?

使用From/to输入字段,然后使用.sendkeys。尝试一下:

from selenium.webdriver.common.keys import Keys

#From
driver.find_element_by_xpath("//div[@class='mssval']//input[@class='mss_list val valstart']").send_keys(Keys.CONTROL, 'a')
driver.find_element_by_xpath("//div[@class='mssval']//input[@class='mss_list val valstart']").send_keys(Keys.BACKSPACE)
driver.find_element_by_xpath("//div[@class='mssval']//input[@class='mss_list val valstart']").send_keys(0)

#To
driver.find_element_by_xpath("//div[@class='mssval']//input[@class='mss_list val valend']").send_keys(Keys.CONTROL, 'a')
driver.find_element_by_xpath("//div[@class='mssval']//input[@class='mss_list val valend']").send_keys(Keys.BACKSPACE)
driver.find_element_by_xpath("//div[@class='mssval']//input[@class='mss_list val valend']").send_keys(35000)
注意事项:

  • 我假设您在我的最后一行
    驱动程序之后执行另一个selenium操作。通过xpath(//div[@class='mssval']//input[@class='mss\u list val valend'])查找元素。发送密钥(35000)
    。我这样说是因为您需要离开字段,以使“35000”输入生效,并且不想使用任何不相关的代码来证明这一点
  • 通常,您可以在输入字段上使用
    .clear()
    方法 而不是
    .sendkeys CTRL+A,
    然后
    BACKSPACE
    ,但在您的网站中,它们 自动填充字段,使
    清除
    不起作用

  • 谢谢没有问题,只需单击答案旁边的勾号,即可将其标记为“已回答”