-
Notifications
You must be signed in to change notification settings - Fork 0
/
csv_to_json.py
35 lines (26 loc) · 1.04 KB
/
csv_to_json.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import csv
import json
import os
# CSV dosyasının tam yolu
csv_file_path = '/opt/hopbala/eoip2_asn_list.csv.csv'
json_file_path = '/opt/hopbala/geoip_database.json'
# Dosya yolunun doğruluğunu kontrol etme
if not os.path.exists(csv_file_path):
print(f"Error: CSV file not found at {csv_file_path}")
exit(1)
# JSON verilerini saklayacak dictionary
geoip_data = {}
# CSV dosyasını oku
with open(csv_file_path, 'r', encoding='utf-8') as csv_file:
csv_reader = csv.DictReader(csv_file)
for row in csv_reader:
organization = row['autonomous_system_organization']
ip_range = row['network']
asn = row['autonomous_system_number']
if organization not in geoip_data:
geoip_data[organization] = {'ipv4': [], 'asn': asn}
geoip_data[organization]['ipv4'].append(ip_range)
# JSON verilerini dosyaya yaz
with open(json_file_path, 'w', encoding='utf-8') as json_file:
json.dump(geoip_data, json_file, indent=4)
print(f"JSON veritabanı '{json_file_path}' dosyasına yazıldı.")