🐍 Examples and Code Snippets
Prevent a document from being exported
If you don't need to export some of the parsed documents (typically, based on a certain condition), simply return None. This will mark the document as "Skipped." Skipped documents aren't exported to Webhooks, Zapier, and other integrations.
return None
Create a new field
# Create fielddata['new_field'] = 'Field value' # Create field based on another field. If 'email' doesn't exist, use the default valuedata['customer_email'] = data.get("email", 'default@example.com')
Delete a field
del data['email']
Merge multiple fields into one
# Using string concatenation (+ operator)data['fullname'] = data['first_name'] + " " + data['last_name'] # Using formatted string literals (f-strings)data["fullname"] = f"{data['first_name']} {data['last_name']}" # Using format() functiondata['fullname'] = '{} {}'.format(data['first_name'], data['last_name'])
Rename a field
This code will remove the original email
field and insert a new field customer_email
with the same value:
data['customer_email'] = data.pop('email')
Check if field exists in parsed data
# If 'name' exists, change its valueif "name" in data: data['name'] = 'Peter' # If 'name' doesn't exists, create fieldif "name" not in data: data['name'] = 'Peter'# ...or in one linedata['name'] = data.get('name', 'Peter')
Store parsed data in another variable
You can also create a new dictionary which will replace the original data
dictionary.
parsed_data = { **data, # copy all the fields from the 'data' dictinary 'name': 'Peter', 'age': 27}return parsed_data # do not forget to 'return' the dictionary
Round a floating point number
pi = 3.141592653589793data['pi'] = round(pi, 2) # 3.14
Formatting dates
Airparser provides 2 Python modules to work with dates: datetime and dateparser.
date = data['date'] # "Mon, Mar 28, 2022"format_out = "%Y-%m-%d" # YYYY-MM-DD # Using the 'datetime' moduleformat_in = "%a, %b %d, %Y"date_out_1 = datetime.strptime(date, format_in).strftime(format_out)data['date_formatted_1'] = date_out_1 # Using the 'dateparser' moduledate_parsed = dateparser.parse(date)date_out_2 = date_parsed.strftime(format_out)data['date_formatted_2'] = date_out_2