You now need to use sudo to get BSSID and country code information.
Post
Replies
Boosts
Views
Activity
I was able to test MacOS 14.1.2 and 14.2 today and I am seeing the same issues.
I tested with the Python 3.8.18, 3.9.18, 3.10.13, and 3.11.8 downloaded with Brew as well as Python 3.9.6 distributed by Apple with the command line developer tools.
I have noticed that even without the proper permissions Python 3.9 distributed by Apple can access the SSID. Enabling the permissions it can also access location and BSSID. This applies to MacOS 14.1, 14.2 and MacOS 14.4 and matches the behavior in MacOS 13.
As for the Python versions distributed by Brew, I am getting inconsistent results. Testing MacOS 14.1 and 14.2, I was able to access location with all Python versions, however I was never able to get SSID or BSSID. Testing MacOS 14.4 I was able to get SSID and BSSID with some versions after granting permissions but not others. In my testing 3.8 and 3.9 worked and 3.10 and 3.11 did not, but this might not be consistent as it was previously not working.
In MacOS 13.6 I was able to get location, SSID, and BSSID with Python 3.8, 3.9, 3.10, and 3.11 from Brew and Python 3.9 from Apple.
Note that there are two mistakes in the script I posted. The scan on line 6-7 should be after authorization and lines 27-28 were duplicated by mistake.
I retested MacOS 14.4 on a different computer after upgrading it from MacOS 14.1.2 and hit a new inconsistency. Even with the correct permissions Python 3.9 distributed by Apple was able to print the SSID and location but not BSSID. And with all the brew versions I was unable to print SSID and BSSID matching my previous testing of 14.1 and 14.2.