Visst kan du göra det med SQLAlchemy.
Allt du behöver göra är att skapa olika anslutningsmotorer, var och en med sin egen sessionstillverkare. Ingenting i SQLAlchemy begränsar dig till endast en databas åt gången.
engines = []
sessions = []
for dbconninfo in databases:
engine = create_engine(dbconninfo)
engines.append(engine)
sessions.append(sessionmaker(bind=engine)())
Du kan använda varje session för att köra frågor, resultatobjekt bifogas till den session som producerade dem, så att ändringar flyter tillbaka till rätt databas. Studera sessionsdokumentationen i detalj för att se vad som händer om du till exempel slår samman ett objekt från en session till en annan.