Koodi: Valitse kaikki
#!/usr/bin/env python
import os
import csv
import time
# Parses the contents of the given file and updates dictionary accordingly
def log_file_parser(infile):
for line in infile:
if "AType:9" in line:
splitstr = line.split(" ")
countrysplit = splitstr[3]
countrysplit2 = countrysplit.split(":")[1]
positionsplit = splitstr[4]
positionsplit2 = positionsplit.split("(")[1]
positionsplit3 = positionsplit2.split(".")[0]
fields[positionsplit3] = countrysplit2
return fields
# Gets the latest log file
def file_sniffer():
logdir='.' # path to your log directory
logfiles = sorted([ f for f in os.listdir(logdir) if f.startswith('missionReport')])
return logfiles[-1]
# Writes airfield owners to csv file
def airfields_to_csv(airfields):
writer = csv.writer(open("./airfields.csv", 'wb'))
for airfield, owner in airfields.items():
writer.writerow([airfield, owner])
# Reads airfield owners from csv file
def csv_to_airfields():
reader = csv.reader(open("./airfields.csv", 'rb'))
airfields = dict(reader)
return airfields
# Gives server commands based on airfield owners to set airfield owners on server
def set_airfield_owners(fields):
if fields['39220'] == "101":
print "Setting Dubki to VVS"
if fields['39220'] == "201":
print "Setting Dubki to Axis"
if fields['6386'] == "101":
print "Setting Naglbaevka to VVS"
if fields['6386'] == "201":
print "Setting Naglbaevka to Axis"
fields = csv_to_airfields()
print fields
# Set the airfield owners
set_airfield_owners(fields)
while True:
logfile = file_sniffer()
logfiletoparse = open(logfile, "r")
fields = log_file_parser(logfiletoparse)
logfiletoparse.close()
airfields_to_csv(fields)
time.sleep(15)