阅读 88

selenium 执行js脚本

使用 selenium 直接在当前页面中进行js交互

使用selenium 执行 Js 脚本

要使用 js 首先要知道 js 怎么用,现在举个简单得例子,就用12306举例子, 它的首页日期选择框是只能手动去选择对应得时间,因为他是 readonly 属性,要改为自

动选择得话,就需要通过 js 去修改。在控制台中我们可以简单得进行操作,如图:

使用selenium的话,思路是一样的,先将readonly属性通过js去掉,然后执行js将它的时间日期改掉,代码如下

# Base 为上一章节的base.py默认继承下来的东西
from base import Base
import pytest
import time


class TestJs(Base):
    def test_js(self):
        url = ‘https://www.12306.cn/index/‘
        self.driver.get(url)
        date_js = ‘document.getElementById("train_date").removeAttribute("readonly")‘
        self.driver.execute_script(date_js)
        time.sleep(2)
        date_js2 = ‘document.getElementById("train_date").value="2024-06-30"‘
        self.driver.execute_script(date_js2)
        # ss = self.driver.find_element_by_xpath(‘//*[@id="train_date"]‘).text
        # print(f‘更改之后当前的日期为:{ss}‘)


if __name__ == ‘__main__‘:
    pytest.main(["-vs", "test_chromjs.py"])

原文:https://www.cnblogs.com/c-keke/p/14942556.html

文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐