Ostrzeżenia to tylko ostrzeżenia. Zostaną one zgłoszone (zazwyczaj) stderr, ale nic więcej nie zostanie zrobione. Nie możesz ich złapać jak wyjątków, ponieważ nie są podnoszone.
Możesz jednak skonfigurować, co zrobić z ostrzeżeniami i wyłącz je lub zamień je w wyjątki, używając warnings moduł. Na przykład warnings.filterwarnings('error', category=MySQLdb.Warning) aby włączyć MySQLdb.Warning warnings na wyjątki (w takim przypadku zostałyby przechwycone przy użyciu opcji try/except) lub 'ignore' w ogóle ich nie pokazywać. Możesz (i prawdopodobnie powinieneś) mieć bardziej szczegółowe filtry niż tylko kategorię.