如何解析csv文件作为python脚本的参数

时间:2017-09-20 13:50:45

标签: python python-3.x csv

我有一个python脚本,它最初接受一个URL作为脚本的参数,但现在我正在寻找更新代码以接受CSV文件作为参数

最初使用以下命令执行脚本:

python3 script.py -x -y www.example.com

现在的问题是,我现在不再只有一个网址,而是一个包含10� 000网址的CSV文件。

如何使用终端中的命令解析CSV文件中的URL?

1 个答案:

答案 0 :(得分:0)

保持您的程序不变,但不是在命令行接受单个URL,而是接受CSV文件的名称,然后打开CSV文件并处理脚本中的每个URL

ActiveSheet

用于启动脚本的命令:

import sys
import csv
import requests


def get_next(csv_file):
    with open(csv_file, newline='') as csvfile:
        url_reader = csv.reader(csvfile, delimiter=' ', quotechar='|')
        for row in url_reader:
            for url in row[0].split(','):
                print(url)
                yield url


def process_url(url):
    page = requests.get(url)
    print(page)


if __name__ == '__main__':
    url_csv_file = sys.argv[3]

    for url in get_next(url_csv_file):
        process_url(url)

>> http://www.google.com
>> <Response [200]>
>> http://www.facebook.com
>> <Response [200]>
>> http://wikipedia.com
>> <Response [200]>

这是用作输入的CSV文件的内容:

python3 script.py -x -y mydata.csv