Como posso instalar os gateways do módulo e encontrar o endereço do meu roteador?

1

Eu quero determinar o endereço do meu roteador usando um código python. Descobri que posso usar esse método netifaces.gateways() após a instalação da biblioteca netifaces .

Mas meu problema é:

rimeh@rimeh-PC:~$ python 
Python 2.7.3 (default, Dec 18 2014, 19:10:20)     
[GCC 4.6.3] on linux2    
Type "help", "copyright", "credits" or "license" for more information.    
>>> import netifaces    
>>> gws=netifaces.gateways()    
Traceback (most recent call last):    
File "<stdin>", line 1, in <module>    
AttributeError: 'module' object has no attribute 'gateways'

preciso de ajuda, obrigado.

    
por user4650183 10.03.2015 / 13:17

1 resposta

0

O gateway() só está disponível desde netifaces 0.10.0. Tente, em vez disso, chamar o comando route de um subprocesso:

$ python -c 'import subprocess; print subprocess.check_output(["route", "-n"]).splitlines()[2].split()[1]'
192.168.1.1
    
por Sylvain Pineau 10.03.2015 / 13:44