The task of downloading comprehensive datasets of event‐based seismic waveforms has been made easier through the development of standardized webservices but is still highly nontrivial because the likelihood of temporary network failures or subtle data errors naturally increases when the amount of requested data is in the order of millions of relatively short segments. This is even more challenging because the typical workflow is not restricted to a single massive download but consists of fetching all possible available input data (e.g., with several repeated download executions) for a processing stage producing any desired user‐defined output. Here, we present stream2segment, a highly customizable Python 2+3 package helping the user in the entire workflow of downloading, inspecting, and processing event‐based seismic data by means of a relational database management system as archiving storage, which has clear performance and usability advantages, and an integrated processing subroutine requiring a configuration file and a single Python function to produce user‐defined output. Stream2segment can also produce diagnostic maps or user‐defined plots, which, unlike existing tools, do not require external software dependencies and are not static images but instead are interactive browser‐based applications ideally suited for data inspection or annotation tasks and subsequent training of classifiers in foreseen supervised machine‐learning applications.
Stream2segment has already been used as a data quality tool for datasets within the European Integrated Data Archive and to create a weak‐motion database (in the form of a so‐called flat file) for the stable continental region of Europe in the context of the European Ground Shaking Intensity Model service, in turn an important building block for seismic hazard studies.