I know this is 10 months late, but I think you are looking for a BalancedBaggingClassifier from imblearn .
imblearn.ensemble.BalancedBaggingClassifier(base_estimator=None, n_estimators=10, max_samples=1.0, max_features=1.0, bootstrap=True, bootstrap_features=False, oob_score=False, warm_start=False, ratio='auto', replacement=False, n_jobs=1, random_state=None, verbose=0)
Effectively, what it allows you to do is to consistently underestimate your majority class when setting the score from above. You can use a random forest or any basic scikit-learn rating. Here is an example .
source share