设置属性值selenium python

时间:2018-06-17 17:23:41

标签: python python-3.x selenium

enter image description here

在此示例中,这是一个根据您选择显示的记录数动态更改的数据库表。我正在创建一个遍历每一行以获取数据的脚本,但是,如果您进入特定记录,或刷新页面,视图每次都会重置为第1页。例如,如果您在第5页并点击刷新,页面将刷新视图到第1页。

我的工作是传入值500,然后选择值为500的选项。这将增加结果以在一个页面上显示所有内容,这样我就不必刷新页面。 / p>

我正在尝试访问选项值50以将其更改为值500.然后我将使用.click()方法将视图更改为此值。

我试图用这种方式没有运气。

driver.execute_script("document.getElementById('dt_a_length').getElementsByTagName('option').setAttribute('value', '500')")

我非常感谢对此有所帮助。谢谢!

2 个答案:

答案 0 :(得分:3)

您也可以执行此操作以为“元素”设置“值”:

driver.execute_script("arguments[0].setAttribute('value',arguments[1])",element, value)

答案 1 :(得分:1)

.getElement s ByTagName返回一个包含多个元素的类数组对象。它没有方法setAttribute,它存在于单个元素上。这种事情更像是jQuery的风格。尝试:

.getElementsByTagName('option')[0].setAttribute('value', '500')

在select中的第一个选项上设置值。

或者,跳过所有这些内容并直接在表单中使用dt_a_length=500发送POST请求(假设没有其他需要发送的内容)。