Python+selenium自動化腳本編輯過程中遇到的問題和小技巧


應該也不算是問題和技巧,算是實踐中學習到的Python,記錄下,也不定時更新

1.通過截取url判斷

實例:

self.assertEqual(self.broswer.current_url[self.broswer.current_url.find('editor=')+7:],'564d406f76bf511e8d000004','沒有篩選自己')

截取url中editor=后面的字符串到最后

2.第一次使用正則

實例:

elf.assertNotEqual(exResult,re.search('\d+',self.broswer.find_element_by_xpath('/html/body/div/div/ui-view/div/div[1]/ul/li/span[2]').text).group(),'搜索結果條數一樣')

獲取到的text是“當前222篇”,正則獲取數字開始的數字

3.彈出框

實例:

self.broswer.get(exURL)
sleep(2)
alert = self.broswer.switch_to_alert()
alert.accept()

由於當前界面是編輯界面,所以想回到之前的界面時會彈出alert。還可以用dismiss

4.切換窗口

實例:

now_handle = self.broswer.current_window_handle
for handle in self.broswer.window_handles:#先切換到新打開的窗口,然后關掉
    if handle !=now_handle:
        self.broswer.switch_to_window(handle)
        self.broswer.close()
self.broswer.switch_to_window(now_handle)#切換回原來的窗口

點擊超鏈接后在新窗口中打開了,要把新打開的窗口關閉再切換回原來的窗口

先獲取當前的handle,再和handles對比,如果不是就先切換過去關掉

再切換回來

一開始是將切換回原來的handle放到else里,結果發現獲取到的window_handles中第一個handle就是原來的handle

導致當窗口關閉之后,handle還是之前的handle沒有切換過來

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM