
एक TUI ब्लूटूथ उपयोगिता रडार विश्लेषण और वार ड्राइविंग के लिए 🦉
Python और Bleak लाइब्रेरी का उपयोग करके एक सरल ब्लूटूथ लो एनर्जी (BLE) स्निफ़र
समयबद्ध स्नूप |
असीमित स्नूप |
यदि आप iTerm2 का उपयोग कर रहे हैं, तो आपको यह सुनिश्चित करना होगा कि टर्मिनल के पास स्वयं ब्लूटूथ की अनुमति है।
सिस्टम सेटिंग्स (या सिस्टम प्रेफरेंसेस) खोलें।
प्राइवेसी और सिक्योरिटी > ब्लूटूथ पर जाएं और iTerm2 को एक्सेस प्रदान करें।
python -m venv .venv
source .venv/bin/activate
pip install asyncio bleak rich manuf bluetooth-numbers geocoder
python3 bluesnoop.py
bluesnoop किसी भी योगदान के लिए खुला है। कृपया रिपॉजिटरी को फोर्क करें और उन सुविधाओं या सुधारों के साथ पुल रिक्वेस्ट बनाएं जिन्हें आप लागू करना चाहते हैं।
An Organizationally Unique Identifier (OUI) is a 24-bit (three-byte) number, managed by the IEEE, that uniquely identifies a manufacturer or organization for network devices, forming the first half of a device's MAC address to ensure global uniqueness
Python में uuid.UUID क्लास RFC 4122 मानक के अनुसार स्ट्रिंग्स को सख्ती से मान्य करती है। विशेष रूप से, यह स्ट्रिंग में एक विशिष्ट स्थान पर "वर्जन" डिजिट की तलाश करती है।
यह विफल क्यों हो रहा है एक मानक UUID में, तीसरे समूह का पहला डिजिट (जैसे, xxxx-xxxx-Nxxx-xxxx) 1 से 5 तक का एक नंबर होना चाहिए (जो वर्जन को दर्शाता है)।
आपके डेटा को देखते हुए:
D5D93B6E-C324-FD7B... -> वर्जन डिजिट F है।
6ADBBD89-CBFF-0FE8... -> वर्जन डिजिट 0 है।
चूंकि F और 0 मान्य RFC 4122 वर्जन (1-5) नहीं हैं, Python एक ValueError फेंकता है: badly formed hexadecimal UUID string.
निम्नलिखित पर और अधिक अन्वेषण करें:
discovered_devices_and_advertisement_data // https://bleak.readthedocs.io/en/latest/api/scanner.html#bleak.BleakScanner.discovered_devices // 16:20 @ 1/8/26 BW
यदि आपको bluesnoop पसंद आया, तो कृपया मेरे भविष्य के प्रोजेक्ट्स के लिए फंडिंग हेतु एक प्रायोजक बनने पर विचार करें।
मेरे अन्य कार्यों को देखने के लिए, मेरी GitHub प्रोफ़ाइल पर जाएँ।