Python和RPA网页自动化-处理iframe嵌入式框架
以网易云为例,歌曲列表都在<iframe>框架下,使用Python和RPA网页自动化依次点击10首歌的播放键
1、python代码
从网页源代码可见,整个歌曲列表都在<iframe>框架下。如果没有切换进入<iframe>框架再进行操作,会报错NoSuchElementException如下
如果有切换进入<iframe>框架再进行操作,则会正常运行依次点击10首歌的播放键
附上代码
from selenium import webdriver from time import sleep browser = webdriver.Chrome() browser.get("https://music.163.com/#/playlist?id=9157819413") sleep(5) # switch_to.frame()切换到<iframe>框架里面 browser.switch_to.frame('contentFrame') for i in range(10): playXpath="/html/body/div[3]/div[1]/div/div/div[2]/div[2]/div/div[1]/table/tbody/tr["+str(i+1)+"]/td[1]/div/span[1]" # 进行播放操作 browser.find_element_by_xpath(playXpath).click() sleep(5)
2、RPA指令
步骤:RPA不需要特殊处理iframe,直接捕获播放键的相似元素组,再遍历相似元素组点击即可