2017-09-02 62 views
-2

請指教如何使用Python selenium Chrome Webdriver在新選項卡中打開鏈接。所以,我不問如何簡單地打開一個新標籤,也不要問如何用Firefox打開一個新標籤。使用Python selenium在一個新選項卡中打開鏈接Chrome Chrome瀏覽器驅動程序

這一個打開同一網頁在新標籤:

first_link.send_keys(Keys.CONTROL + Keys.ENTER) 

這一個太:

first_link.send_keys(Keys.CONTROL + Keys.ENTER) 

alecxe答案this question因爲不工作,我不能讓一個URL的鏈接是指着。我需要簡單地模擬右鍵單擊>「在新選項卡中打開鏈接」。

*****後方可評論UPDATE *****

的問題原來是與網站本身https://www.pagesjaunes.fr。出於某種原因,它會在搜索結果中輸入錯誤的網址。例如元素// * [@ id =「bi-bloc-0437413413085060110003C0001」]/div [2]/header/div 1/div/h2/a [2] 因此,當試圖鏈接此元素通過Selenium或請求訪問,它會重定向到搜索結果本身的頁面。鑑於此,我決定採用不同的方法來解決問題。

因此我決定放棄在新選項卡中打開鏈接的方法。

+0

你有沒有嘗試任何建議的解決方案嗎?如果其中一人解決了您的問題,請[接受](https://stackoverflow.com/help/accepted-answer)或提供一些反饋,否則 – Andersson

回答

0

試試這個:

driver.find_element_by_tag_name("body").send_keys(Keys.COMMAND + 't') 
+0

嘗試一次它的工作 – iamsankalp89

0

下面對我的作品很大

from selenium import webdriver 
from selenium.webdriver.common.action_chains import ActionChains 
from selenium.webdriver.common.keys import Keys 

driver = webdriver.Firefox() 
driver.get("http://tarunlalwani.com/post/") 
action = ActionChains(driver) 
elem = driver.find_element_by_link_text("How To Debug Nginx Reverse Proxy Issues") 
action\ 
    .move_to_element(elem)\ 
    .key_down(Keys.SHIFT)\ 
    .click(elem)\ 
    .key_up(Keys.SHIFT)\ 
    .perform() 

driver.quit() 
+0

它將在同一個選項卡中打開鏈接。我需要它在一個新選項卡中打開 –

+0

我打開一個新窗口而不是一個選項卡。但兩個窗口在同一瀏覽器 –

0

您可以修改HTML源代碼給力所需的鏈接在新標籤頁中打開。只需添加/設置屬性target"_blank"如下:

link = driver.find_element_by_link_text('link text') 
driver.execute_script('arguments[0].target="_blank";', link) 
link.click() 
+0

這個解決方案不好,因爲我沒有訪問該鏈接。沒錯,元素的'href'不包含鏈接 –

0

這裏是Python 3.6.1的代碼塊,使用chromedriverGoogle Chrome,打開網址http://www.google.com,打印標題,然後打開一個新的TAB與URL http://facebook.com/鑄造WebDriver實例JavascriptExecutor

from selenium import webdriver 

driver = webdriver.Chrome(executable_path=r'C:\Utility\BrowserDrivers\chromedriver.exe') 
driver.get('https://www.google.co.in') 
print("Page Title is : %s" %driver.title) 
driver.execute_script("window.open('http://facebook.com/');") 
+0

這個解決方案不好,因爲我沒有訪問鏈接。對,元素的'href'不包含鏈接。一旦我在瀏覽器中點擊它,它會將我重定向到正確的頁面。 –

相關問題