selenium 拿不到部分元素可能是什么原因

2019-12-23 19:41:15 +08:00
 lasuar

正在用 python 练习 selenium,发现 page_source 不包含页面上一部分元素,这部分元素是我点击之后出现的,但应该可以拿到的,这是为什么呢?

2224 次点击
所在节点    程序员
11 条回复
opengps
2019-12-23 19:47:50 +08:00
加延迟解决,现在很多前端框架都是用 js 后渲染的
haohh
2019-12-23 19:48:26 +08:00
sleep 试试
jugelizi
2019-12-23 19:50:58 +08:00
既然点击出现 和 se 啥关系
模拟下 js 事件呗
loryyang
2019-12-23 20:01:04 +08:00
看下是不是有 frame 或者 iframe
iyaozhen
2019-12-23 20:43:34 +08:00
「这部分元素是我点击之后出现的」
那你 click 一下撒
lasuar
2019-12-23 20:48:15 +08:00
@opengps
@haohh
试过不行的,多久都不行
@jugelizi
@iyaozhen
点击操作是已经模拟了的

@loryyang 不太明白,老哥可以多说几句不?蟹蟹
loryyang
2019-12-23 20:51:23 +08:00
@lasuar #6。。。在 frame 里面的结构是搜不到的,你必须要先 switch to frame
Leigg
2019-12-23 21:51:16 +08:00
@loryyang 那我得先找到这个 frame 所在的标签,然后调用 switch to frame 这个 api ?之前没用到过这个,有吗?
Leigg
2019-12-23 21:55:06 +08:00
@loryyang 遇到过跟楼主相同的问题,没解决…
zone10
2019-12-24 11:30:56 +08:00
楼上已经说到了, 我遇到过的情况就是元素在 frame 里或者还没加载出来, switch to frame 或者 sleep 一下就完事了
lasuar
2019-12-24 11:55:50 +08:00
@loryyang 老哥 np,感谢感谢!解决了。

@zone10 嗯嗯,不太了解这个 iframe

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/631636

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX