3 回答
TA贡献2003条经验 获得超2个赞
这是一个基于(单击坐标而不识别元素)上可用的最后一个答案的解决方案,我必须调整该答案,因为它在我在原始代码中发布的网站上不起作用:
# WORKING EXAMPLE 3
# assumptions is I know what coordinate I want to use
# in this example we use x = 253, y = 584
# remember: y = 584 -> it will move down (a negative value moves up)
zero_elem = driver.find_element_by_tag_name('body')
x_body_offset = zero_elem.location["x"]
y_body_offset = zero_elem.location["y"]
print("Body coordinates: {}, {}".format(x_body_offset, y_body_offset))
x = 253
y = 310
actions = ActionChains(driver)
actions.move_to_element_with_offset(driver.find_element_by_tag_name('body'), -x_body_offset, -y_body_offset).click()
actions.move_by_offset( x, y ).click().perform()
基本上,身体坐标不一定是 0,0,这就是我必须使用 x_body_offset 和 y_body_offset 的原因。
TA贡献1815条经验 获得超10个赞
这是一个基于(单击坐标而不识别元素)上可用的最后一个答案的解决方案,我必须调整该答案,因为它在我在原始代码中发布的网站上不起作用:
# WORKING EXAMPLE 3
# assumptions is I know what coordinate I want to use
# in this example we use x = 253, y = 584
# remember: y = 584 -> it will move down (a negative value moves up)
zero_elem = driver.find_element_by_tag_name('body')
x_body_offset = zero_elem.location["x"]
y_body_offset = zero_elem.location["y"]
print("Body coordinates: {}, {}".format(x_body_offset, y_body_offset))
x = 253
y = 310
actions = ActionChains(driver)
actions.move_to_element_with_offset(driver.find_element_by_tag_name('body'), -x_body_offset, -y_body_offset).click()
actions.move_by_offset( x, y ).click().perform()
基本上,身体坐标不一定是 0,0,这就是我必须使用 x_body_offset 和 y_body_offset 的原因。
添加回答
举报