如何运用python selenium去修改div里面的text内容呢

img

如何运用python selenium去修改div里面的text内容呢

Selenium 主要是用来测试网页,而不是修改网页的,所以可以用 Selenium 获取网页 div 里的内容,但不能直接修改。 你先要理解你用 selenium 用来做什么事。

如果非要修改内容,就是要用 JavaScript,可以参考上面那个链接里的写法,试一下类似如下的写法:


# 根据className来定位 请注意获取到的是一个数组
driver.execute_script("document.getElementsByClassName('soft-default')[0].innerText='replaced text'")

# 或者试试这样
driver.execute_script("document.querySelector('.soft-default span').innerText='replaced text'")

使用driver执行js脚本即可。

  1. 先锁定到元素所在位置
  2. 然后通过innerText设置修改内容

driver.execute_script("document.getElementsByClassName('soft-default')[0].innerText='修改内容'")

https://blog.csdn.net/amoscn/article/details/78229358

Selenium 是一个综合性的项目,为web浏览器的自动化提供了各种工具和依赖包,并不能修改网页中的内容。

selenium是自动化爬取网页的工具,并不支持你修改网页源码,而且修改了刷新以后还会变回去。

修改div下的text,是为了mock假数据,进行测试或录屏吗?
可以使用selenium来执行JavaScript的API:

img



div_elem = driver.some_method_to_find_element()
new_style = div_elem.get_attribute('style').replace('transform 1000ms', 'transform 200ms')
driver.execute_script('arguments[0].setAttribute("style", "%s")' % new_style, div_elem)

https://stackoverflow.com/questions/60703394/python-selenium-how-to-set-text-of-an-div-based-editor

可以参考这个

如有帮助,请采纳,十分感谢!