Skip to content
This repository has been archived by the owner on Jun 13, 2024. It is now read-only.
/ VAST_XML_Parser Public archive

A VAST XML parser that extracts Creative and MediaFile element metadata.

License

Notifications You must be signed in to change notification settings

ben-nour/VAST_XML_Parser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VAST XML Parser

A Video Ad Serving Template (VAST) 2.0/3.0 XML parser that extracts Creative and MediaFile element metadata and presents this information in an application built on the PyQt5 GUI framework:

Screen Shot 2022-02-16 at 4 03 41 pm

VAST is a Video Ad Serving Template for structuring ad tags that serve ads to video players. Using an XML schema, VAST transfers important metadata about an ad from the ad server to a video player. Read more here.

Inspiration

Examining a raw VAST tag response is timely, particlarly when wanting to test the creative/media files, so I created this application to make it quicker and easier to read MediaFile metadata and to copy the creative files' URLs.

How it works

Parses the VAST XML tree for the MediaFile element and populates the application table with both the MediaFile content/file and attributes/values.

Also populates application fields with Creative element's ID and AdID attribute values (if present), as well as highest and lowest bitrate values.

If there is no MediaFile element then the table does not populate.

Sample tag

A Single InLine Linear tag sourced from Google's IMA sample tags was used for the above screenshot/example.

Installation

Download the source files or clone the code to your virtual enviroment:

$ git clone https://github.com/ben-n93/VAST_XML_Parser.git

Navigate into the parent directory and install the required packages:

$ cd VAST_XML_Parser
$ pip3 install -r requirements.txt

Launch program:

$ python3 vast_xml_parser.py

License

Distributed under the Apache-2.0 License. See LICENSE.txt for more information.