Berbagi teknologi

Solusi 1 ketika python tidak dapat menemukan elemen saat menggunakan simulasi halaman web Selenium

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Saat mensimulasikan halaman web, terkadang kita dapat dengan jelas menyalin xpath suatu elemen, tetapi kita tidak dapat mengklik elemen tersebut menggunakan klik xpath Selenium. Ada beberapa alasan untuk situasi ini. Artikel ini menulis tentang salah satunya - iframe

Misalnya, pada URL di bawah, jika iframe muncul di baris kedua, elemen inline di bawah tidak akan ditemukan. Saat ini, kita perlu beralih ke mode iframe.
Masukkan deskripsi gambar di sini

Kodenya adalah sebagai berikut, Anda perlu menggunakan switch_to.frame(), di mana () merujuk ke tag iframe di seluruh halaman web, yang pertama adalah 0, semua orang mengetahuinya.Disarankan untuk mencari dalam kode sumber halaman web di sini
Setelah selesai, switch_to.default_content() keluar dari pengeditan iframe, dan tidak perlu mengisi ().

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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9