2012-09-23 44 views
0

我想通過python在Firefox中從文本文件午餐多個urls。我正在使用win7操作系統& python 3.我需要一些方向將參數傳遞給Firefox。從python3啓動firefox中的多個url

import os 
import subprocess 

f = open ('C:\\Users\\test\\Desktop\\urls.txt','r') 
data = f.read() 
print(data) 
# i need some help here to pass this argument to Firefox. 
f.close() 

urls.txt

http://www.abc.com 
http://www.xyz.com/test 
http://www.abc.net/test.html 
http://www.test.com 
http://www.msn.com 

回答

4

使用webbrowser module

import webbrowser 
firefox = webbrowser.get('firefox') 
for url in data.split('\n'): 
    firefox.open_new_tab(url) 

如果你不想執行特殊的瀏覽器,只需啓動默認的,使用webbrowser.open_new_tab

webbrowser模塊是不是很可靠的,特別是在Windows,所以你可能有使用subprocess模塊手動啓動進程:

import subprocess 
firefox_path = 'C:/Program Files/Firefox/firefox' # change this line accordingly 
for url in data.split('\n'): 
    subprocess.Popen([firefox_path, url]) 

此外,Firefox支持在命令行中多個URL,所以下面的解決方案是更好:

import subprocess 
urls = open('C:/Users/test/Desktop/urls.txt').read().split('\n') 
subprocess.Popen(['C:/Program Files/Firefox/firefox']+urls) 
+0

10X,用於輸入,我得到引用的線#2,http://pastebin.com/msbJuuS8 – user1582596

+0

@ user1582596它看起來像Python不能找到Firefox ...嘗試'webbr owser.open_new_tab'沒有'firefox = ...'行。 –

+0

是的,現在沒有回溯,但有兩個問題。 1)它觸發IE 2)只有最後一個選項卡正在發射。 _http://pastebin.com/J5feShRB – user1582596

相關問題