parsing more
This commit is contained in:
parent
4441cb8eab
commit
0b438788c3
@ -1,3 +1,6 @@
|
|||||||
|
from pprint import pprint
|
||||||
|
from decimal import *
|
||||||
|
|
||||||
import re
|
import re
|
||||||
|
|
||||||
def parse_transducer(file_path):
|
def parse_transducer(file_path):
|
||||||
@ -16,16 +19,30 @@ def parse_transducer(file_path):
|
|||||||
|
|
||||||
# Extract the Transducer number and Transducer type
|
# Extract the Transducer number and Transducer type
|
||||||
transducer_line = lines.pop(0).strip()
|
transducer_line = lines.pop(0).strip()
|
||||||
_, transducer_name, transducer_type = transducer_line.split(None, 2)
|
_, transducer_name, part_number = transducer_line.split(None, 2)
|
||||||
|
|
||||||
|
# Get part number and values
|
||||||
|
value = None
|
||||||
|
transducer_type = None
|
||||||
|
if part_number != "Custom":
|
||||||
|
value = part_number.split()[-1]
|
||||||
|
part_number = part_number.split()[1]
|
||||||
|
if value.endswith("SCCM"):
|
||||||
|
transducer_type = "Flow"
|
||||||
|
if value.endswith("PSIA"):
|
||||||
|
transducer_type = "Pressure"
|
||||||
|
|
||||||
|
|
||||||
# Create a dictionary to store the data for each transducer
|
# Create a dictionary to store the data for each transducer
|
||||||
transducer_info = {
|
transducer_info = {
|
||||||
|
'Part Number': part_number,
|
||||||
|
'Value': value,
|
||||||
'Transducer Name': transducer_name,
|
'Transducer Name': transducer_name,
|
||||||
'Transducer Type': transducer_type,
|
'Transducer Type': transducer_type,
|
||||||
'Setpoint Pressures': {},
|
'Setpoint Pressure':[],
|
||||||
'Instrument Pressures': {},
|
'Instrument Pressure': [],
|
||||||
'Master Values': {},
|
'Master Value': [],
|
||||||
'Instrument Flows': {},
|
'Instrument Flow': [],
|
||||||
'Verify Date': '',
|
'Verify Date': '',
|
||||||
'Verify Time': ''
|
'Verify Time': ''
|
||||||
}
|
}
|
||||||
@ -33,18 +50,19 @@ def parse_transducer(file_path):
|
|||||||
# Extract other information for the transducer
|
# Extract other information for the transducer
|
||||||
for line in lines:
|
for line in lines:
|
||||||
key, value = re.sub(r'\s\s+', ',', line.strip()).split(',')
|
key, value = re.sub(r'\s\s+', ',', line.strip()).split(',')
|
||||||
if 'Setpoint Pressure' in key:
|
if 'Verify Date' in key:
|
||||||
transducer_info['Setpoint Pressures'][key] = value
|
|
||||||
elif 'Instrument Pressure' in key:
|
|
||||||
transducer_info['Instrument Pressures'][key] = value
|
|
||||||
elif 'Master Value' in key:
|
|
||||||
transducer_info['Master Values'][key] = value
|
|
||||||
elif 'Instrument Flow' in key:
|
|
||||||
transducer_info['Instrument Flows'][key] = value
|
|
||||||
elif 'Verify Date' in key:
|
|
||||||
transducer_info['Verify Date'] = value
|
transducer_info['Verify Date'] = value
|
||||||
|
continue
|
||||||
elif 'Verify Time' in key:
|
elif 'Verify Time' in key:
|
||||||
transducer_info['Verify Time'] = value
|
transducer_info['Verify Time'] = value
|
||||||
|
continue
|
||||||
|
|
||||||
|
# Toss anything else where it belongs
|
||||||
|
v = Decimal(value.split(" ")[0])
|
||||||
|
key = re.match(r'(.*)\W(\d)', key)[1]
|
||||||
|
if key in transducer_info:
|
||||||
|
transducer_info[key].append(Decimal(value.split()[0]))
|
||||||
|
|
||||||
|
|
||||||
transducer_data.append(transducer_info)
|
transducer_data.append(transducer_info)
|
||||||
|
|
||||||
@ -53,16 +71,19 @@ def parse_transducer(file_path):
|
|||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
file_path = './transducer_verify.txt'
|
file_path = './transducer_verify.txt'
|
||||||
parsed_data = parse_text_file(file_path)
|
parsed_data = parse_transducer(file_path)
|
||||||
|
getcontext().prec = 3
|
||||||
|
|
||||||
# Printing the parsed data for each transducer
|
# Printing the parsed data for each transducer
|
||||||
for transducer_info in parsed_data:
|
for transducer_info in parsed_data:
|
||||||
print("Transducer Name:", transducer_info['Transducer Name'])
|
print("Part Number", transducer_info['Part Number'])
|
||||||
print("Transducer Type:", transducer_info['Transducer Type'])
|
print("Value", transducer_info['Value'])
|
||||||
print("Setpoint Pressures:", transducer_info['Setpoint Pressures'])
|
print("Transducer Type", transducer_info['Transducer Type'])
|
||||||
print("Instrument Pressures:", transducer_info['Instrument Pressures'])
|
print("Setpoint Pressures:", transducer_info['Setpoint Pressure'])
|
||||||
print("Master Values:", transducer_info['Master Values'])
|
print("Instrument Pressures:", transducer_info['Instrument Pressure'])
|
||||||
print("Instrument Flows:", transducer_info['Instrument Flows'])
|
print("Master Values:", transducer_info['Master Value'])
|
||||||
|
print("Instrument Flows:", transducer_info['Instrument Flow'])
|
||||||
print("Verify Date:", transducer_info['Verify Date'])
|
print("Verify Date:", transducer_info['Verify Date'])
|
||||||
print("Verify Time:", transducer_info['Verify Time'])
|
print("Verify Time:", transducer_info['Verify Time'])
|
||||||
print("==========================")
|
print("==========================")
|
||||||
|
pprint(transducer_info)
|
||||||
|
3
tags
3
tags
@ -13,7 +13,8 @@ parse_file parse_hardware.py /^def parse_file(file_path):$/;" f
|
|||||||
parse_instrument_info parse_hardware.py /^def parse_instrument_info(text):$/;" f
|
parse_instrument_info parse_hardware.py /^def parse_instrument_info(text):$/;" f
|
||||||
parse_ports parse_hardware.py /^def parse_ports(text):$/;" f
|
parse_ports parse_hardware.py /^def parse_ports(text):$/;" f
|
||||||
parse_transducer parse_transducer.py /^def parse_transducer(file_path):$/;" f
|
parse_transducer parse_transducer.py /^def parse_transducer(file_path):$/;" f
|
||||||
parsed_data parse_transducer.py /^ parsed_data = parse_text_file(file_path)$/;" v
|
parsed_data parse_transducer.py /^ parsed_data = parse_transducer(file_path)$/;" v
|
||||||
pprint parse_hardware.py /^from pprint import pprint$/;" i
|
pprint parse_hardware.py /^from pprint import pprint$/;" i
|
||||||
|
pprint parse_transducer.py /^from pprint import pprint$/;" i
|
||||||
re parse_hardware.py /^import re$/;" i
|
re parse_hardware.py /^import re$/;" i
|
||||||
re parse_transducer.py /^import re$/;" i
|
re parse_transducer.py /^import re$/;" i
|
||||||
|
Loading…
Reference in New Issue
Block a user