0

我有一个链接列表,它存储在一个文件中。我想通过一些脚本打开浏览器中的所有链接,而不是手动复制粘贴每个项目。

例如操作系统:MAC OS X;浏览器:Chrome;脚本:Python(首选)

4

2 回答 2

7

看看webbrowser模块。

import webbrowser

urls = ['http://www.google.com', 'http://www.reddit.com', 'http://stackoverflow.com']
b = webbrowser.get('firefox')
for url in urls:
    b.open(url)

PS:对 Chrome 的支持已经包含在3.3版本中,但是 Python 3.3 仍然是一个候选版本。

于 2012-08-27T01:40:09.650 回答
3

由于您在 Mac 上,因此您只需使用 subprocess 模块即可调用open http://link1 http://link2 http://link3. 例如:

from subprocess import call
call(["open","http://www.google.com", "http://www.stackoverflow.com"])

请注意,这只会打开您的默认浏览器;但是,您可以简单地将open命令替换为特定浏览器的命令来选择您的浏览器。

这是通用格式文件的完整示例

alink
http://anotherlink

(ETC。)

from subprocess import call
import re
import sys

links = []

filename = 'test'

try:
    with open(filename) as linkListFile:
        for line in linkListFile:
            link = line.strip()
            if link != '':
                if re.match('http://.+|https://.+|ftp://.+|file://.+',link.lower()):
                    links.append(link)
                else:
                    links.append('http://' + link)
except IOError:
    print 'Failed to open the file "%s".\nExiting.'
    sys.exit()

print links
call(["open"]+links)
于 2012-08-27T01:41:31.000 回答