[英]How to parse a csv file as a parameter for a python script
我有一個python腳本,該腳本最初接受單個URL作為腳本的參數,但現在我希望更新代碼以接受CSV文件作為參數
最初,腳本是使用以下命令執行的:
python3 script.py -x -y www.example.com
問題是現在我不再只有一個URL,而是一個包含10'000 URL的CSV文件。
如何使用終端中的命令解析CSV文件中的URL?
保持程序原樣,但不要在命令行上接受單個URL,而是接受CSV文件的名稱,然后打開CSV文件並處理腳本中的每個URL
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]>
用於啟動腳本的命令:
python3 script.py -x -y mydata.csv
這是用作輸入的CSV文件的內容:
http://www.google.com,http://www.facebook.com
http://wikipedia.com
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.