sklearn serialize label encoder for multiple categorical columns
LabelEncoder is meant for the labels (target, dependent variable), not for the features.  OrdinalEncoder can be used for features, and so can take a 2d array rather than the 1d array LabelEncoder requires, and so you can use a single transformer for all your categorical columns.  (You can use a ColumnTransformer to select those categorical columns, if you have continuous ones too.)

But, you should not use OrdinalEncoder before OneHotEncoder anymore:  OneHotEncoder has for some time now applied directly to string categorical columns.