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

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 Matlab安装yalmip和cplex功能安装失败
  • ¥15 加装宝马安卓中控改变开机画面
  • ¥15 STK安装问题问问大家,这种情况应该怎么办
  • ¥15 更换了一个新的win10系统,再下载VS时碰到的问题,是C++组件的?
  • ¥15 关于罗技鼠标宏lua文件的问题
  • ¥15 halcon ocr mlp 识别问题
  • ¥15 已知曲线满足正余弦函数,根据其峰值,还原出整条曲线
  • ¥20 无法创建新的堆栈防护界面
  • ¥15 sessionStorage在vue中的用法
  • ¥15 wordpress更换域名后用户图片头像不显示