I wrote this program to be used for robotics teams taking part in the FIRST Robotics Competition. Our team needed a way to download match schedules and team lists for various events, and we didn’t have an efficient way to automate that. This program uses the TBA APIv3 to download event match schedules, event team lists, and a complete FRC team list.
When using the program, most settings are saved when the program is closed, including the TBA API key, data to export setting, output file location, file export type, and the team number to highlight. The only thing that is not saved is the match ID. Instructions for how to use the program can be found below.
Data to Export
You can select what data to pull from The Blue Alliance database. The “Data to Export” drop down lists all of the options available. “Match schedule” will download a list of all qualification matches with team numbers and alliance colors. “Event Team List” will download a list of all teams present at an event. “Complete Team List” will download a list of all registered FRC teams. Other program settings will determine which file type this data will be exported to.
File Type & Location
The next settings available determine where the exported file will save and what format the file will be. The “Browse” button will open a dialog where the output location can be changed. To change the output file type, open the “File type” drop down. Available output file types are .XLSX (default), .TXT, and .XLS.
The match ID is determines what match data to fetch. To find a match ID for an event, first open the corresponding TBA page. For this example, I will use the 2019 Indiana FIRST championship event. The URL of the event page for this event is “thebluealliance.com/event/2019incmp.” The match ID is the text after “/event/,” which for this event, is “2019incmp.” This text should be copied into the “Match ID” text field.
(Optional) Team Number
This setting simply highlights the given team number in the exported Excel file. This can be used to easily find which matches a specific team is competing in. To use this setting, type a team number into the “Team number” text field.
Once all the settings are chosen, run the program by pressing the “Start” button. As the program runs, the progress bar will estimate how much data is left to process. Additional information will be given in the output log during the process. Once the program is finished, the output file will contain the downloaded information.