Python中文
首页
教程
问答
标签
搜索
登录
注册
需要转储selenium s中具有元素id的整个DOM树
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我一直在使用python selenium进行web自动化测试。自动化的关键部分是为HTML页面中用户可见的对象找到正确的元素。下面的API大部分时间都可以工作,但不是所有时间都可以。</p> <pre><code>find_element_by_xxx, xxx can be id, name, xpath, tag_name etc. </code></pre> <p>当HTML页面太复杂时,我想搜索dom树。不知道是否可以要求selenium服务器序列化整个DOM(使用可以通过webdriver服务器执行操作的元素id)。客户端(python脚本)可以使用自己的搜索算法来查找正确的元素。</p> <p>注意,python selenium可以通过</p> <pre><code>drv.page_source </code></pre> <p>但是,从selenium服务器的角度来看,解析它并没有给出内部元素id,因此没有用处。</p> <p><strong>编辑1:</strong> 解释一下以使其更清楚(感谢@alecxe):这里需要的是selenium服务器中所有DOM元素的序列化表示(保留它们的DOM结构),这个序列化表示可以发送到客户端(python selenium测试应用程序),客户端可以进行自己的搜索。</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>尝试:</p> <pre><code>find_elements_by_xpath("//*") </code></pre> <p>它应该与文档中的所有元素匹配。</p> <p>更新(以匹配问题优化):</p> <p>使用javascript并将DOM作为字符串返回:</p> <pre><code>execute_script("return document.documentElement.outerHTML") </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何提高Djang的410误差
5 回答
如何提高doc2vec模型中两个文档(句子)的余弦相似度?
2 回答
如何提高Docker的日志限制?|[输出已剪裁,达到日志限制100KiB/s]
3 回答
如何提高DQN的性能?
6 回答
如何提高EasyOCR的准确性/预测?
1 回答
如何提高Euler#39项目解决方案的效率?
5 回答
如何提高F1成绩进行分类
10 回答
如何提高FaceNet的准确性
3 回答
如何提高fft处理的精度?
9 回答
如何提高Fibonacci实现对大n的精度?
10 回答
如何提高Flask与psycopg2的连接时间
2 回答
如何提高FosterCauer变换的scipy.signal.invres()的数值稳定性?
1 回答
如何提高gae查询的性能?
7 回答
如何提高GANs用于时间序列预测/异常检测的结果
4 回答
如何提高gevent和tornado组合的性能?
9 回答
如何提高googleappengin请求日志的吞吐量
9 回答
如何提高googlevision文本识别的准确性
6 回答
如何提高groupby/apply效率
9 回答
如何提高Gunicorn中的请求率
6 回答
如何提高G中的文件编码转换
3 回答