Open sheepdestroyer opened 7 years ago
Hi,
I'm getting similar errors, too (on macOS 10.12.2 and Python 2.7.12).
FreeWifi $ python wifi-users.py
Available interfaces: en1
Interface: en1
Error getting wireless interface.
Traceback (most recent call last):
File "wifi-users.py", line 161, in <module>
main(argv)
File "wifi-users.py", line 68, in main
ssid = wireless.current()
File "/usr/local/lib/python2.7/site-packages/wireless/Wireless.py", line 79, in current
return self._driver.current()
File "/usr/local/lib/python2.7/site-packages/wireless/Wireless.py", line 427, in current
self._interface))
File "/usr/local/lib/python2.7/site-packages/wireless/Wireless.py", line 11, in cmd
stdout=subprocess.PIPE, stderr=subprocess.STDOUT
UnicodeDecodeError: 'ascii' codec can't decode byte 0xf0 in position 23: ordinal not in range(128)
Similar, but not the same.
@spiritphyz I would theorize that there are nearby wifi networks whose names have non-ascii characters.
It looks like this is a bug in Wireless and it would be great if you could submit an issue in that repo.
I think @tbodt is correct, and that this is a bug with non-ASCII characters being evaluated by this regex https://github.com/joshvillbrandt/wireless/blob/master/wireless/Wireless.py#L70
If you could paste the name of your current wireless network here, it would probably help in debugging the issue. You can probably get the wireless name from Network Settings, but if not you can also use this in the Terminal:
$ /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -I \
| grep " SSID"
SSID: FREE_WIFI
i'm in france so there's likely some accentuated network nearby, i'll try to do your check later
edit : my bad, that does not apply to me as it fails at getting the wireless interface
@tbodt @kylemcdonald Awesome! You guys are totally right -- my home WiFi network has non-ASCII Emoji in the network name:
$ /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -I \
> | grep " SSID"
SSID: 🐳 Big Whale Network
I don't have any problems with Unicode in the network name because all our devices are iOS or Mac, and the network name is displayed correctly during discovery.
Is it easy to change the regex to include Unicode?
It's not a problem with the regex, it's a problem with the bare decode()
at the top of the file. It should have 'utf-8'
in it (or something).
@sheepdestroyer your problem is also a problem with Wireless, but a different one. the version of nmcli has a hyphen in it which breaks the version detection.
I think I have the simple problem with this following error
root@WalkerPi:/home/t/FreeWifi# python wifi-users.py -i wlx90f6520940c1
Traceback (most recent call last):
File "wifi-users.py", line 10, in <module>
from netaddr import EUI, mac_unix_expanded
ImportError: No module named netaddr
root@WalkerPi:/home/t/FreeWifi#
I don't know what means the EUI for? I have try the with tcpdump
with the right USB...
and I'm running on Raspberry Pi Ubuntu Mate.
Should I modify the py file?