O que seu código está realmente fazendo quando essas exceções acontecem - você está registrando elas, tentando novamente, ou apenas passando adiante silenciosamente?
A razão pela qual as pessoas insistem em exceções específicas é que um `except:` ou `except Exception:` sem especificação vai capturar literalmente tudo, incluindo coisas que você não antecipou e provavelmente não deveria estar engolindo. Como se você está tentando abrir um arquivo e captura `FileNotFoundError`, isso é específico e faz sentido. Mas um except vazio também vai capturar coisas como `KeyboardInterrupt` ou `SystemExit`, que você geralmente quer deixar passar. Pior ainda, isso esconde bugs - se seu código tem um typo ou erro de lógica que levanta algo inesperado, você nunca vai ver porque a cláusula except comeu.
Dito isso, para scripts menores ou coisas rápidas, as pessoas ficam pragmáticas com isso. A diferença realmente aparece quando você está debugando ou quando seu código é passado para outra pessoa. Exceções específicas deixam sua intenção clara - esse código sabe como lidar com um arquivo faltando, mas não com um problema de conexão com banco de dados. Se você está escrevendo algo que vai permanecer pequeno, capturar `Exception` (não um `except` vazio) é muito mais seguro do que um handler genérico, e você pelo menos consegue ver o que está sendo capturado. Conforme seus projetos crescerem, você vai querer ficar mais específico mesmo. A prática de ser deliberado sobre o que você captura não é apenas pedantaria - isso te salva de bugs misteriosos depois.