此處采用函數執行鼠標滑動操作,最終完成動態數據的加載(懶加載)
原理:設置 一個空列表用於存儲每次鼠標拖動后的瞬間頁面最大高度。每次追加頁面的最新高度
在每次拖動后,重新去獲取一下,當前頁面的最大高度
如果獲取的頁面最大高度等於了列表最后的那個最大高度,說明頁面到底了,跳出循環。
否則會將當前獲取的最大頁面添加到列表中去,繼續比較。
def mouse_move(self): # 滑動鼠標至底部操作
all_window_height = [] # 創建一個列表,用於記錄每一次拖動滾動條后頁面的最大高度
all_window_height.append(self.web.execute_script("return document.body.scrollHeight;")) # 當前頁面的最大高度加入列表
while True: self.web.execute_script("scroll(0,100000)") # 執行拖動滾動條操作
sleep(3) check_height = self.web.execute_script("return document.body.scrollHeight;") # 當前頁面的最大高度
if check_height == all_window_height[-1]: # 判斷拖動滾動條后的最大高度與上一次的最大高度的大小,相等表明到了最底部
break
else: all_window_height.append(check_height) # 如果不想等,將當前頁面最大高度加入列表。