我在从元素中获取文本时遇到问题,并在尝试获取隐藏元素的值时遇到问题,因此我尝试使用键向下隐藏元素,然后从中获取文本。
我一直在尝试使用arrow_down键导航到表格的行,但即使尝试了多个选项后它也无法正常工作。
我的html文件结构如下:
<table class="activities-table">
<thead style="display:none">
<tbody>
<tr>
<tr>
<tr>
<tr>
<tr>
<tr>
<tr>
<tr>
我有与每个元素相对应的元素。
到目前为止我尝试过的事情:
1.
elem_list = self.elements
elem = elem_list[0] #took the first element
actions = ActionChains(driver)
actions.click(elem).send_keys_to_element(elem,Keys.SPACE ).perform()
2.
elem_pos = elem.location['y']
driver.execute_script("window.scroll(0, %s)"%elem_pos)
elem.click()
time.sleep(2)
elem.send_keys(Keys.ARROW_DOWN)
3.
elem_list = self.elements
elem = elem_list[0]
elem.click()
elem.send_keys(Keys.ARROW_DOWN)
每次点击都有效,但send_keys
执行时却没有执行任何操作。
答案 0 :(得分:2)
解决了以下问题。
下面的elem1是表格滚动条的元素:
elem1 = driver.find_element_by_xpath(<xpath of the table scroller>)
actionChains = ActionChains(driver);
numberOfPixels = 50;
actionChains.move_to_element(elem1).click_and_hold().move_by_offset(0,numberOfPixels).release().perform();
可以根据需要改变要拖动的像素数