2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Lors de la simulation de pages Web, nous pouvons parfois évidemment copier le XPath d'un élément, mais nous ne pouvons pas cliquer sur l'élément en utilisant le clic XPath de Selenium. Il y a plusieurs raisons à cette situation. Cet article parle de l'une d'entre elles : l'iframe.
Par exemple, dans l'URL ci-dessous, si une iframe apparaît dans la deuxième ligne, les éléments en ligne ci-dessous ne seront pas localisés. À ce stade, nous devons passer en mode iframe.
Le code est le suivant, vous devez utiliser switch_to.frame(), où () fait référence à la balise iframe dans toute la page Web, la première est 0, tout le monde le sait.Il est recommandé de rechercher dans le code source de la page Web ici
Une fois terminé, switch_to.default_content() quitte l'édition iframe et il n'est pas nécessaire de remplir le ().
from selenium.webdriver import Chrome
web = Chrome()
#进入iframe编辑
web.switch_to.frame(2) #第3个iframe标签
time.sleep(1)
#定位到元素
web.find_element(By.XPATH,'//*[@id="root"]/div/div[1]/div[2]/div[1]').click() #点击元素
web.switch_to.default_content()#退出iframe