//*[@id="layui-layer-iframe2"]
/html/body/div[4]/div[2]/iframe
<iframe scrolling="auto" allowtransparency="true" id="layui-layer-iframe2" name="layui-layer-iframe2" onload="this.className='';" class="" frameborder="0" src="/SC/SCBM/SCBM_new?_Bmddj.com_id=SH01&_Bmddj.mdid=SC&_Bmddj.djid=BM&_Bmddj.fid=200872&_Bmddj.ver_i=v1&_Bmddj.act_type=BOM信息录入&_Bmddj.act_name=Act5&_Bmddj.opr_flag=N&_Bmddj.org_mdid=SC&_Bmddj.org_djid=BM&_Bmddj.act_flag=A&_Bmddj.flw_flag=&_Bmddj.mdid_opr_flag=*" style="height: 1263px;"></iframe>
//*[@id="layui-layer-iframe2"]
/html/body/div[4]/div[2]/iframe
<iframe scrolling="yes" allowtransparency="true" id="layui-layer-iframe2" name="layui-layer-iframe2" onload="this.className='';" class="" frameborder="0" src="/PublicArea/Public/select_item?endFlag=parent.beforeItemSelect(dtsData);&mdid=SC&djid=BM&kvs_str={"select_item_no":"item_no","select_item_name":"item_name","select_item_spec":"spec","select_type_no":"type_no","select_item_pattern":"pattern","select_item_type":"item_type","unit_id":"item_unit","unit_name":"unit_name"}&_Bmddj.com_id=SH01&_Bmddj.mdid=SC&_Bmddj.djid=BM&_Bmddj.fid=200872&_Bmddj.ver_i=v1&_Bmddj.act_name=Act5&_Bmddj.act_type=BOM信息录入&_Bmddj.opr_flag=N&_Bmddj.org_mdid=SC&_Bmddj.org_djid=BM&_Bmddj.act_flag=A&_Bmddj.flw_flag=&_Bmddj.mdid_opr_flag=*" style="height: 458px;"></iframe>
iframe中包含iframe,但src有些不同,可以使用如下方法:
print('//*[@id="layui-layer-iframe2"]')
iframe4 = iframe = WebDriverWait(self.driver, 10).until(
EC.presence_of_element_located((By.XPATH,"//iframe[contains(@src, '/PublicArea/Public/')]")))
# 根据iframe的src内容来切换不同的iframe
self.driver.switch_to.frame(iframe4)