亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python網(wǎng)絡(luò)爬蟲(chóng)selenium打開(kāi)多窗口與切換頁(yè)面的實(shí)現(xiàn)

 更新時(shí)間:2022年01月27日 15:23:47   作者:侯小啾  
本文主要介紹了python網(wǎng)絡(luò)爬蟲(chóng)selenium打開(kāi)多窗口與切換頁(yè)面的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

關(guān)于python網(wǎng)絡(luò)爬蟲(chóng)selenium打開(kāi)多窗口與切換頁(yè)面的方法代碼測(cè)試與解析。

首先打開(kāi)百度

from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get('https://www.baidu.com/')

以知乎為例,打開(kāi)一個(gè)新的界面,使用 execute_script() 方法,執(zhí)行JavaScript代碼。
并調(diào)用driver的current_url屬性,然后查看當(dāng)前頁(yè)面的url:

driver.execute_script("window.open('https://www.zhihu.com')")
print(driver.current_url)

在這里插入圖片描述

當(dāng)前頁(yè)面依然還是百度。要想把當(dāng)前頁(yè)面換成知乎,還需要繼續(xù)用代碼切換過(guò)來(lái)。

打印 句柄 ,即driver的 window_handles 屬性,輸出結(jié)果如下:

print(driver.window_handles)

在這里插入圖片描述

是一個(gè)有兩個(gè)元素的列表,分別代表上邊打開(kāi)的兩個(gè)網(wǎng)頁(yè),百度和知乎。

分別將其傳入switch_to.window()方法中,再打印當(dāng)前頁(yè)面的url,輸出結(jié)果如下,可以看到,頁(yè)面成功被切換。

win1 = driver.window_handles[0]
driver.switch_to.window(win1)
print(driver.current_url)

time.sleep(2)

win2 = driver.window_handles[1]
driver.switch_to.window(win2)
print(driver.current_url)

在這里插入圖片描述

關(guān)于句柄在列表中的順序,
建議一般最好只額外打開(kāi)一個(gè)網(wǎng)頁(yè),不建議打開(kāi)更多的網(wǎng)頁(yè)進(jìn)行切換。當(dāng)打開(kāi)的網(wǎng)頁(yè)數(shù)量超過(guò)兩個(gè)時(shí),句柄列表中的元素分別代表哪個(gè)網(wǎng)頁(yè),其順序是不太好確定的。以下面代碼為例,其順序如下。

from selenium import webdriver
import time

driver = webdriver.Chrome()

driver.get('https://www.baidu.com/')

# 打開(kāi)一個(gè)新的頁(yè)面
driver.execute_script("window.open('https://www.zhihu.com')")
driver.execute_script("window.open('https://www.lagou.com/')")
driver.execute_script("window.open('https://www.jianshu.com/')")

win1 = driver.window_handles[0]
driver.switch_to.window(win1)
print(driver.current_url)

time.sleep(2)

win2 = driver.window_handles[1]
driver.switch_to.window(win2)
print(driver.current_url)

time.sleep(2)

win3 = driver.window_handles[2]
driver.switch_to.window(win3)
print(driver.current_url)

time.sleep(2)

win4 = driver.window_handles[3]
driver.switch_to.window(win4)
print(driver.current_url)

輸出結(jié)果如圖,句柄的第一個(gè)元素表示我們第一次打開(kāi)的主網(wǎng)頁(yè)界面,
然后我們依次打開(kāi)了知乎、拉鉤、簡(jiǎn)書(shū),但是句柄列表第二三四個(gè)元素依次表示的是簡(jiǎn)書(shū)、拉鉤、知乎。
可以認(rèn)為其從第二個(gè)元素往后是與我們代碼寫(xiě)入的順序是相反的。

在這里插入圖片描述

 到此這篇關(guān)于python網(wǎng)絡(luò)爬蟲(chóng)selenium打開(kāi)多窗口與切換頁(yè)面的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)python selenium多窗口與切換頁(yè)面內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 利用Python封裝MySQLHelper類(lèi)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的增刪改查功能

    利用Python封裝MySQLHelper類(lèi)實(shí)現(xiàn)數(shù)據(jù)庫(kù)的增刪改查功能

    Python 連接 MySQL 的方法有很多,常用的有 pymysql 和 mysql-connector-python 兩種庫(kù),本文主要介紹了如何封裝一個(gè)MySQLHelper類(lèi),實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的增刪改查功能,感興趣的可以了解一下
    2023-06-06
  • django框架中ajax的使用及避開(kāi)CSRF 驗(yàn)證的方式詳解

    django框架中ajax的使用及避開(kāi)CSRF 驗(yàn)證的方式詳解

    這篇文章主要介紹了django框架中ajax的使用及避開(kāi)CSRF 驗(yàn)證的方式,結(jié)合實(shí)例形式分析了Django框架ajax后臺(tái)交互與排除驗(yàn)證csrf相關(guān)操作技巧,需要的朋友可以參考下
    2019-12-12
  • python3學(xué)習(xí)筆記之多進(jìn)程分布式小例子

    python3學(xué)習(xí)筆記之多進(jìn)程分布式小例子

    本篇文章主要介紹了python3學(xué)習(xí)筆記之多進(jìn)程分布式小例子,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • python Tkinter實(shí)時(shí)顯示數(shù)據(jù)功能實(shí)現(xiàn)

    python Tkinter實(shí)時(shí)顯示數(shù)據(jù)功能實(shí)現(xiàn)

    這篇文章主要介紹了python Tkinter實(shí)時(shí)顯示數(shù)據(jù)功能實(shí)現(xiàn),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • Python數(shù)據(jù)結(jié)構(gòu)與算法之算法分析詳解

    Python數(shù)據(jù)結(jié)構(gòu)與算法之算法分析詳解

    算法分析的主要目標(biāo)是從運(yùn)行時(shí)間和內(nèi)存空間消耗等方面比較算法。本文將為大家詳細(xì)介紹Python數(shù)據(jù)結(jié)構(gòu)與算法中的算法分析,需要的可以參考一下
    2021-12-12
  • Python實(shí)現(xiàn)的維尼吉亞密碼算法示例

    Python實(shí)現(xiàn)的維尼吉亞密碼算法示例

    這篇文章主要介紹了Python實(shí)現(xiàn)的維尼吉亞密碼算法,結(jié)合實(shí)例形式分析了基于Python實(shí)現(xiàn)維尼吉亞密碼算法的定義與使用相關(guān)操作技巧,需要的朋友可以參考下
    2018-04-04
  • 在Python中操作字典之clear()方法的使用

    在Python中操作字典之clear()方法的使用

    這篇文章主要介紹了在Python中操作字典之clear()方法的使用,是Python入門(mén)的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • Flask藍(lán)圖學(xué)習(xí)教程

    Flask藍(lán)圖學(xué)習(xí)教程

    在Flask中,使用藍(lán)圖Blueprint來(lái)分模塊組織管理。藍(lán)圖實(shí)際可以理解為是一個(gè)存儲(chǔ)一組視圖方法的容器對(duì)象,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-10-10
  • python實(shí)現(xiàn)復(fù)制整個(gè)目錄的方法

    python實(shí)現(xiàn)復(fù)制整個(gè)目錄的方法

    這篇文章主要介紹了python實(shí)現(xiàn)復(fù)制整個(gè)目錄的方法,涉及Python中shutil模塊的相關(guān)操作技巧,需要的朋友可以參考下
    2015-05-05
  • 深度理解Python中Class類(lèi)、Object類(lèi)、Type元類(lèi)

    深度理解Python中Class類(lèi)、Object類(lèi)、Type元類(lèi)

    本文主要介紹了深度理解Python中Class類(lèi)、Object類(lèi)、Type元類(lèi),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06

最新評(píng)論