Je cherchais à essayer de trouver une solution à mon problème, le mieux que j'ai pu trouver était celui-ci:
from sys import platform if platform == "linux" or platform == "linux2": # linux elif platform == "darwin": # OS X elif platform == "win32": # Windows...
Quelqu'un sait-il comment je pourrais différencier un PC Linux d'Android comme Android basé sur Linux. Et si cela est possible, comment pourrais-je différencier Mac OS d'iOS
3 Réponses :
Utilisez le module platform
:
'Linux-3.3.0-8.fc16.x86_64-x86_64-with-fedora-16-Verne'
Notez qu'un système fonctionnant sous Mac renverra 'Darwin' pour platform.system()
platform.platform () renverra des données extrêmement détaillées, telles que
import platform print(platform.system()) print(platform.release()) print(platform.version())
Existe-t-il un moyen de s'en assurer sur mobile? System.system () fait ce que je veux mais je devrais tester tous les téléphones grand public.
Non seulement cela, mais tous les systèmes d'exploitation aussi en raison de la fragmentation
Je ne suis pas sûr en python vanille, mais Django User Agents détectera si vous êtes sur mobile
request.user_agent.is_mobile
D'après mon expérience personnelle, os.uname ()
a toujours été l'un de mes préférés. La fonction uname
ne réside vraiment que dans les systèmes basés sur Linux. Utiliser la fonction dans une méthode similaire à celle-ci est un bon moyen de détecter si vous utilisez un système Windows ou non:
import os try: test = os.uname() if test[0] == "Linux": do something here. execpt AttributeError: print("Assuming windows!") do some other stuff here.
J'espère que cela vous aidera!
p >
vous pouvez voir mon repo github https://github.com/sk3pp3r/PyOS et utiliser script pyos.py
import platform plt = platform.system() if plt == "Windows": print("Your system is Windows") # do x y z elif plt == "Linux": print("Your system is Linux") # do x y z elif plt == "Darwin": print("Your system is MacOS") # do x y z else: print("Unidentified system")