2016-09-06 111 views
0

我有一個.csv文件,其中包含一列網址(40-50個網址),我想讀取csv文件並在Chrome上打開所有這些網址?有沒有辦法在python中完成此操作?我正在使用下面的一段代碼來讀取csv文件。在鉻上打開網址

exampleFile = open('MyFile.csv') 
exampleReader = csv.reader(exampleFile) 
exampleData = list(exampleReader) 
final = [] 
for item in exampleData: 
    final.append(item[0]) 
for item in final: 
    ??? 
+0

您是否需要查看網頁? – EndermanAPM

+1

使用內置的瀏覽器模塊 –

+0

您是否需要同時或連續打開URL(即先加載,檢查是否正常,然後加載)?你是否打算在網頁加載後對網頁做任何事情?請注意,如果您計劃只加載頁面,與書籤應用程序相似,則可以使用子流程模塊(subprocess.call([「chrome.exe」,URL]))調用外部應用程序。 – Alan

回答

0

您可以使用硒。首先安裝pip install selenium硒。以下代碼在mozilla firefox中打開http://www.python.org。您可以在selenium中將驅動程序更改爲chrome驅動程序以在Chrome中打開鏈接。對於鉻,你可以看到How to run Selenium WebDriver test cases in Chrome?

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

driver = webdriver.Firefox() 
driver.get("http://www.python.org") 
2

您可以使用selenium網絡驅動程序加載每個URL中的鉻。

讀csv文件可以這樣改進:

from selenium import webdriver 

driver = webdriver.Chrome() 

with open('MyFile.csv') as example_file: 
    example_reader = csv.reader(example_file) 
    for row in example_reader: 
     driver.get(row[0]) 
     # do whatever... 

    driver.close() 
+0

WebDriverException:消息:'chromedriver'可執行文件需要位於PATH中。請參閱https://sites.google.com/a/chromium.org/chromedriver/home – Blabber

1

假設你張貼片段是好的和final包含有效的網址,你可以做這樣的事情:

import webbrowser 

exampleFile = open('MyFile.csv') 
exampleReader = csv.reader(exampleFile) 
exampleData = list(exampleReader) 
final = [] 

for item in exampleData: 
    final.append(item[0]) 
for url in final: 
    webbrowser.open_new_tab(url) 

欲瞭解更多信息,採取看看Convenient Web-browser controller

1

最後用它來使它按照我想要的方式工作。另外我不必安裝任何外部模塊!非常感謝你的答案,他們幫助我建立了最終的答案!

import webbrowser 
import csv 

path = "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s" 
exampleFile = open('MyFile.csv') 
exampleReader = csv.reader(exampleFile) 
exampleData = list(exampleReader) 

for item in exampleData: 
    webbrowser.get(path).open(item[0])