Существует несколько возможных причин, почему psycopg2 может не позволять получить список таблиц в базе данных PostgreSQL:
1. Неправильные учетные данные для подключения: Проверьте, что вы используете правильные учетные данные (хост, порт, пользователь, пароль) для подключения к базе данных в вашем скрипте Python.
2. Отсутствие прав доступа: Убедитесь, что у пользователя, под которым вы пытаетесь подключиться к базе данных, есть права на просмотр списка таблиц. Если у пользователя нет соответствующих прав, он не сможет получить список таблиц.
3. Проблемы с конфигурацией: Проверьте, что ваш скрипт Python корректно настроен для работы с PostgreSQL и psycopg2.
Что касается различий в результатах запросов SQL между DBeaver и вашим скриптом Python при одинаковой базе данных, возможно, причина кроется в различиях в синтаксисе запросов или используемых настроек соединения. Убедитесь, что вы используете одинаковые запросы и настройки в обоих случаях. Если проблема остается неясной, рекомендуется проверить логи или сообщения об ошибках для выявления причины различий.