关于selenium定位iframe元素
有大神能帮忙解释一下这个要怎么才能选中这个框架?
语句:driver.switch_to.frame(driver.find_elements_by_xpath("//iframe"))
提示:Message: invalid argument: invalid 'id' driver.switch_to.frame(driver.find_element_by_tag_name(‘iframe’))
试试这个 深谙流年 发表于 2022-3-19 14:26
driver.switch_to.frame(driver.find_element_by_tag_name(‘iframe’))
试试这个
{:9_221:}提示:TypeError:'WebElement' object is not subscriptable 把网址发一下,我看看,
) 深谙流年 发表于 2022-3-19 19:59
把网址发一下,我看看,
)
{:9_220:}这个要内网才能访问的 颖颖M杰杰 发表于 2022-3-19 20:26
这个要内网才能访问的
那好吧,用下标试试,百度查一下iframe用法,很多的
本帖最后由 lightninng 于 2022-3-19 23:25 编辑
人家的id不是"tab_b_131340"?你少了后面6个数字当然找不到
另外建议既然使用id作为锚点,由于id在web页面中是唯一的,使用find_element_by_id方法更好,能避免自己在写xpath的时候的一些问题。 深谙流年 发表于 2022-3-19 21:26
那好吧,用下标试试,百度查一下iframe用法,很多的
{:9_221:}现在好像是已经进去嵌套了,但是又不确定是不是进去了。因为搜里面的css找不到元素。
lightninng 发表于 2022-3-19 22:38
人家的id不是"tab_b_131340"?你少了后面6个数字当然找不到
另外建议既然使用id作为锚点,由于id在web页面 ...
{:9_234:}那个ID不是唯一的,它每次都会变化。 颖颖M杰杰 发表于 2022-3-20 11:05
那个ID不是唯一的,它每次都会变化。
我说的唯一是指在整个页面内,所有元素的id不能有相同的,既然id会变化,那将id作为锚点就不可靠,你需要找其他的方法,选择不变的属性作为锚点 lightninng 发表于 2022-3-20 12:06
我说的唯一是指在整个页面内,所有元素的id不能有相同的,既然id会变化,那将id作为锚点就不可靠,你需要 ...
直接给方法不好吗,他都知道id会变, 深谙流年 发表于 2022-3-20 16:18
直接给方法不好吗,他都知道id会变,
这论坛又不是答疑论坛,我从来只谈思路,偶尔有兴致才会码代码,编程水平本来就是再一次次处理问题中长进的,问题都靠别人,那以后也只能一直靠别人~~~
我说话比较直,如有冒犯,见谅~~ lightninng 发表于 2022-3-20 19:55
这论坛又不是答疑论坛,我从来只谈思路,偶尔有兴致才会码代码,编程水平本来就是再一次次处理问题中长进 ...
{:10_279:}说的对 深谙流年 发表于 2022-3-22 00:07
说的对
对的。后来在网上看到其实都不用xpath,直接用driver.switch_to.frame(2)就可以{:5_107:} 颖颖M杰杰 发表于 2022-3-22 22:18
对的。后来在网上看到其实都不用xpath,直接用driver.switch_to.frame(2)就可以
这个就是下标呀 深谙流年 发表于 2022-3-23 00:58
这个就是下标呀
{:9_240:}其实是因为之前已经跳进第二个框架忘记跳出来了,所以用了很多方法都不行。 颖颖M杰杰 发表于 2022-3-23 23:04
其实是因为之前已经跳进第二个框架忘记跳出来了,所以用了很多方法都不行。
{:10_256:}思路理顺就好了
页:
[1]