瀏覽器中新開標籤頁(Tab)

2022-05-29 10:36:09 字數 2202 閱讀 2432

#

!usr/bin/env python

#-*- coding:utf-8 -*-

"""ab

@author: sleeping_cat

@contact : [email protected]

"""#

瀏覽器中新開標籤頁(tab)

import

unittest

from selenium import

webdriver

import

time

import

win32api,win32con

vk_code=

defkeydown(keyname):

win32api.keybd_event(vk_code[keyname],0,0,0)

defkeyup(keyname):

win32api.keybd_event(vk_code[keyname],0,win32con.keyeventf_keyup,0)

defsimulatekey(firstkey,secondkey):

keydown(firstkey)

keydown(secondkey)

keyup(secondkey)

keyup(firstkey)

class

testdemo(unittest.testcase):

defsetup(self):

self.driver =webdriver.firefox()

deftest_newtab(self):

time.sleep(3)

#使用for迴圈,再新開兩個新的標籤頁

for i in range(2):

simulatekey(

'ctrl

','t')

#使用ctrl+tab組合件,將當前頁面切換為預設頁面,也就是最先開啟的標籤頁

simulatekey('

ctrl

','tab')

self.driver.get(

'')self.driver.find_element_by_id(

'query

').send_keys('

光榮之路')

self.driver.find_element_by_id(

'stb

').click()

time.sleep(3)

self.asserttrue(

'喬什·盧卡斯'in

self.driver.page_source)

all_handles =self.driver.window_handles

print

(len(all_handles))

#將當前視窗控制代碼切換至第二個標籤頁

self.driver.switch_to.window(all_handles[1])

self.driver.get(

'')self.driver.find_element_by_id('kw

').send_keys('

webdriver實戰寶典')

self.driver.find_element_by_id('su

').click()

time.sleep(3)

self.asserttrue(

'吳曉華'in

self.driver.page_source)

self.driver.switch_to.window(all_handles[2])

self.driver.get(

'')self.driver.find_element_by_id('kw

').send_keys('

selenium')

self.driver.find_element_by_id('su

').click()

time.sleep(3)

self.asserttrue(

'www.seleniumhq.org'in

self.driver.page_source)

defteardown(self):

self.driver.quit()

if__name__ == '

__main__':

unittest.main()

注意:ie瀏覽器暫不支援

瀏覽器切換標籤頁的方法

方法一 快捷鍵切換標籤頁 我們使用快捷鍵 ctrl 數字 就可以快速切換谷歌瀏覽器的標籤頁了,例如 ctrl 1是切換到第乙個標籤,ctrl 2是切換到第二個標籤,依次類推,但是ctrl 9不是第九個標籤頁,而是最後乙個標籤頁。換一種解釋方法就是,ctrl鍵加上數字鍵1 8對應的是第一到第八個標籤,...

瀏覽器標籤tab視窗切換時事件狀態偵聽

做到 是大屏專案,用的websocket,在瀏覽器切換標籤視窗後,過了一段時間回來,頁面會非常卡,所以想頁面切回來的時候重新整理頁面,找到了這個方法,這是原來的例子。這段 可以自己複製去做下測試 var normal title document.addeventlistener visibilit...

瀏覽器內多個標籤頁之間的通訊

呼叫localstorge cookies等本地儲存方式。方法一 localstorge在乙個標籤頁裡被新增 修改或刪除時,都會觸發乙個storage事件,通過在另乙個標籤頁裡監聽storage事件,即可得到localstorge儲存的值,實現不同標籤頁之間的通訊。標籤頁1 標籤頁 2 方法二 使用...