m0_57965808 2021-10-21 10:53 采纳率: 90.9%
浏览 280
已结题

selenium跳转到新页面中的句柄问题

背景:运用selenium爬取某文库
问题:在爬取过程中需要跳转到新的页面,在我查找操作方法的时候发现了一个名为句柄的东西。看了一些解释但感觉还是不是很明确。希望能解释一下,另外有代码如下:

from selenium import webdriver
from time import sleep
import urllib
import os
import time
driver = webdriver.Firefox()#火狐浏览器
driver.implicitly_wait(10)
driver.maximize_window()
url = 'http://www.eastmoney.com/'
driver.get(url)
a = driver.find_element_by_xpath("/html/body/div[3]/div[5]/div/ul[1]/li[1]/a[1]/strong").click()
#选择财富网的财经专栏,点击进去
print(driver.current_url)#打印当前的url
hand = driver.window_handles#获取当前的所有句柄
print(hand)#打印当前的所有句柄
driver.switch_to_window(hand[1])#转换窗口至最高的句柄
result_url = driver.current_url#获取当前句柄之后的url
print(driver.current_url)#打印当前句柄之后的url

想知道倒数第3行代码是什么意思,以及句柄的高低是怎么计算的。
并且,为什么我将倒数第三行代码写入我的代码之后会出现划掉的情况:

img

  • 写回答

1条回答 默认 最新

  • 江天暮雪丨 2021-10-21 11:12
    关注

    句柄就是一个窗口的ID。
    倒数第三行就是切换driver窗口,句柄高低不太清楚,一般是后打开的窗口句柄处于最后一个(最高)
    划掉的代码你移到上面会有提示,估计是说这个方法即将被弃用,建议你使用另一个切换窗口方法

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月29日
  • 已采纳回答 10月21日
  • 修改了问题 10月21日
  • 创建了问题 10月21日

悬赏问题

  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏