Я пытаюсь получить новый IP-адрес в сеансе tor, используя стебель и следующую функцию, которая сильно «вдохновлена» этим ответом а>:
def get_new_IP():
socket.socket = old_socket
with Controller.from_port(port=SOCKS_PORT) as controller:
controller.authenticate()
controller.signal(Signal.NEWNYM)
socket.socket = socks.socksocket
Однако я получаю сообщение об ошибке «IncorrectSocketType: невозможно использовать контрольный сокет», вызванное controller.authenticate()
, что оставляет меня немного потерянным, поскольку пароль или что-либо не указано, и первоначальное соединение, которое я установил, тоже работает.
Я также попытался добавить 'CookieAuthentication': str(1)
, как предлагается здесь, в настройки конфигурации при запуске процесс tor, однако это тоже не сработало.
Как получается, что первоначальное соединение работает, и почему я не могу пройти аутентификацию при попытке повторного подключения?