我想進入框架名稱“body”,但它不起作用。我可以進入第一幀并且一切正常,但問題是當我嘗試進入確實框架集時。硒看不到它
這是我的代碼:
frame = driver.find_element(By.XPATH, "/html/frameset/frame[2]")
driver.switch_to.frame(frame)
frame= driver.find_element(By.XPATH, '/html/frameset/frame[1]')
driver.switch_to.frame(frame)
HTML 代碼:
<html><head>
<title>
Le Moniteur belge.
</title>
</head>
<frameset rows="14%,*">
<frame src="rech_f1.htm" name="frame1_fr" noresize="">
<frame src="rech_f2.htm" name="frame2_fr" cd_frame_id_="f1e39289d55588245ed84ea909665732">
<html>
<frameset>
<frame src="list_body.pl?language=fr&sql=htit contains 'roche'&fromtab= moftxt UNION montxt UNION modtxt&rech=83&trier=promulgation&tri=dd AS RANK &dt=&ddda=&dddm=&dddj=&ddfa=&ddfm=&ddfj=&pdda=&pddm=&pddj=&pdfa=&pdfm=&pdfj=&numac=&bron=&htit=roche&text1=&choix1=ET&text2=&choix2=ET&text3=&exp=&&fr=f&nl=n&du=d&an=" name="Body" scrolling="auto">
</frameset>
</html>
<noframes>
pas de frames
</noframes>
</frameset>
uj5u.com熱心網友回復:
看起來框架body位于第一個框架集中的第二個框架集中。所以你可以使用完整的 xpath 找到它:(By.XPATH, "/html/frameset/frameset/frame")
或者你可以嘗試使用這個 realtive XPATH 找到它(By.XPATH, "//frame[@name='Body']")]
uj5u.com熱心網友回復:
您需要正確定位元素。此外,根據您共享的 HTML,“body”框架不在frame2_fr. 如果您只想進入body框架,您可以使用以下代碼執行此操作:
frame = driver.find_element(By.XPATH, "//frame[@name='Body']")
driver.switch_to.frame(frame)
完成后,不要忘記使用默認內容
driver.switch_to.default_content()
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/529210.html
