If you have a handful of stadiums and arenas only, then you might find a list online that suffices. For example, from Wikipedia global or US only.
If you need wider coverage, and also for many types of buildings, consider the following two options:
Option 1: Wikidata, with as an example some variation of arena (Q641226) and maximum capacity (P1083)
SELECT ?arena ?arenaLabel ?maximum_capacity WHERE {
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
?arena wdt:P31 wd:Q641226.
OPTIONAL { ?arena wdt:P1083 ?maximum_capacity. }
}
try it!
If this is helpful, but you need some Sparql help for refining the query, you can ask a new question here, or at the Request a Query page.
Option 2: OpenStreetMap has a tag for leisure=stadium as well as keys for capacity and seats.
You can use the Overpass-turbo tool to develop a query, and since it's not massive amounts of data, probably export from there, too.
[out:json][timeout:25];
// gather results
(
// query part for: “leisure=stadium”
node["leisure"="stadium"]({{bbox}});
way["leisure"="stadium"]({{bbox}});
relation["leisure"="stadium"]({{bbox}});
// query part for: “seats=*”
node["seats"]({{bbox}});
way["seats"]({{bbox}});
relation["seats"]({{bbox}});
);
// print results
out body;
>;
out skel qt;
try it!
You asked about:
... sports arenas, theaters, music halls, business conference centers, even bars and restaurants.
I think option 1 may be better for sports arenas, theaters, music halls
and option 2 may be better for business conference centers, even bars and restaurants.
My opinion would be to to cast a wide net with OSM data for various categories, and then use the existing link to Wikidata objects. For example, in OSM, the Barclay Center has this tag: wikidata=Q807966