午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

網(wǎng)頁爬蟲 - Python+Selenium+PhantomJs爬蟲,如何取得新打開頁面的源碼?

瀏覽:178日期:2022-09-13 10:39:57

問題描述

我在做一個python爬蟲,使用了selenium庫和phantomjs瀏覽器。我在一個網(wǎng)頁中觸發(fā)了一個click事件打開了一個新的網(wǎng)頁,然后我用browser.page_source得到的卻是原來那個網(wǎng)頁非新打開網(wǎng)頁的源碼,請問我該如何取得新打開頁面的源碼呢?

問題解答

回答1:

如果鏈接打開了一個新標簽頁的話,你的driver還是下默認使用的還是當前窗口,

Alternatively, you can pass a “window handle” to the “switch_to_window()” method. Knowing this, it’s possible to iterate over every open window like so:

for handle in driver.window_handles: driver.switch_to_window(handle)

比如,如果你的瀏覽器有幾個標簽頁,那么window_handles就保存了對應這幾個標簽頁對應的實例對象,所以如果你當前只打開了一個網(wǎng)頁,那么你新打開的頁面就是 window_handles[1]轉換到那個頁面后,再獲取源碼。

回答2:

如果是在當前窗口打開,有可能因為新頁面還沒有加載完成,到時拿不到新頁面的url和數(shù)據(jù),這里可以使用等待,并設置一些條件,確保新頁面加載完成再進行操作,代碼如下:

from selenium.webdriver.support.ui import WebDriverWait# 等待新頁面生成WebDriverWait(self.browser, 5).until( expected_conditions.presence_of_element_located((By.ID, 'username') )

標簽: Python 編程
主站蜘蛛池模板: 中文字幕亚洲天堂 | 欧美在线天堂 | 亚洲视频国产精品 | 午夜在线免费视频 | 欧美日韩在线中文字幕 | 在线一区观看 | 在线观看亚洲欧美 | 超碰在线人人干 | 综合色婷婷| 成人在线91 | 337p日本大胆噜噜噜鲁 | 成年人免费网站 | 久久国产成人 | 欧美我不卡| av在线播放免费 | 久久精品夜色噜噜亚洲a∨ 欧美一级二级三级视频 | 91精品久久久久久综合五月天 | 日韩网站免费观看 | 欧美国产日韩视频 | 欧美一级日韩 | 日本天堂在线 | 欧美日韩精品一区 | 91精品一区二区三区蜜桃 | 欧美中文字幕在线观看 | 久久不卡免费视频 | 97视频| 久久精品视频一区 | 国内精品久久久久久久久久 | 波多野结衣一本 | 久久人人爽人人爽人人片av免费 | 麻豆一区在线观看 | 黄色片视频免费 | 在线中文字幕一区 | 国产精品免费在线视频 | 国产成人宗合 | 亚洲色视频 | 欧美一区二区久久 | 亚洲福利在线视频 | 99久久精品久久亚洲精品 | 久久久久色 | 国产成年人在线观看 |