Python site.getsitepackages() Examples
The following are 30
code examples of site.getsitepackages().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
site
, or try the search function
.
Example #1
Source File: compat.py From hupper with MIT License | 7 votes |
def get_site_packages(): # pragma: no cover try: paths = site.getsitepackages() if site.ENABLE_USER_SITE: paths.append(site.getusersitepackages()) return paths # virtualenv does not ship with a getsitepackages impl so we fallback # to using distutils if we can # https://github.com/pypa/virtualenv/issues/355 except Exception: try: from distutils.sysconfig import get_python_lib return [get_python_lib()] # just incase, don't fail here, it's not worth it except Exception: return [] ################################################ # cross-compatible metaclass implementation # Copyright (c) 2010-2012 Benjamin Peterson
Example #2
Source File: test_site.py From ironpython2 with Apache License 2.0 | 6 votes |
def test_getsitepackages(self): site.PREFIXES = ['xoxo'] dirs = site.getsitepackages() if sys.platform in ('os2emx', 'riscos'): self.assertEqual(len(dirs), 1) wanted = os.path.join('xoxo', 'Lib', 'site-packages') self.assertEqual(dirs[0], wanted) elif os.sep == '/': # OS X, Linux, FreeBSD, etc self.assertEqual(len(dirs), 2) wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], 'site-packages') self.assertEqual(dirs[0], wanted) wanted = os.path.join('xoxo', 'lib', 'site-python') self.assertEqual(dirs[1], wanted) else: # other platforms self.assertEqual(len(dirs), 2) self.assertEqual(dirs[0], 'xoxo') wanted = os.path.join('xoxo', 'lib', 'site-packages') self.assertEqual(dirs[1], wanted)
Example #3
Source File: render_example.py From 3d-dl with MIT License | 6 votes |
def generate_poses(object_folder, output_folder, renders_per_product, blender_attributes): "Make a call to Blender to generate poses" # python_sites = site.getsitepackages()[0] # python_sites = '/vol/project/2017/530/g1753002/ocadovenv/ocadovenv/lib/python3.5/site-packages' blender_path = '/vol/project/2017/530/g1753002/Blender/blender-2.79-linux-glibc219-x86_64/blender' blender_script_path = os.path.join(src_dir, 'rendering', 'render_poses.py') config_file_path = os.path.join(src_dir, 'rendering', 'config.json') blender_args = [blender_path, '--background', '--python', blender_script_path, '--', src_dir, # config_file_path, object_folder, output_folder, str(renders_per_product), json.dumps(blender_attributes)] # blender_args = [blender_path, '--background', '--python'] print('Rendering...') subprocess.check_call(blender_args) print('Rendering done!')
Example #4
Source File: _editable_install.py From pdm with MIT License | 6 votes |
def install(setup_py, prefix, lib_dir, bin_dir): __file__ = setup_py with getattr(tokenize, "open", open)(setup_py) as f: code = f.read().replace("\\r\\n", "\n") if os.path.exists(os.path.join(lib_dir, "site.py")): # Remove the custom site.py for editable install. # It will be added back after installation is done. os.remove(os.path.join(lib_dir, "site.py")) sys.argv[1:] = [ "develop", "--install-dir={0}".format(lib_dir), "--no-deps", "--prefix={0}".format(prefix), "--script-dir={0}".format(bin_dir), "--site-dirs={0}".format(lib_dir), ] if os.path.normpath(lib_dir) not in site.getsitepackages(): # Patches the script writer to inject library path easy_install.ScriptWriter.template = easy_install.ScriptWriter.template.replace( "import sys", "import sys\nsys.path.insert(0, {0!r})".format(lib_dir.replace("\\", "/")), ) exec(compile(code, __file__, "exec"))
Example #5
Source File: helper.py From skcom with MIT License | 6 votes |
def clean_mod(): r""" 清除已產生的 site-packages\comtypes\gen\*.py """ pkgdirs = site.getsitepackages() for pkgdir in pkgdirs: if not pkgdir.endswith('site-packages'): continue gendir = pkgdir + r'\comtypes\gen' if not os.path.isdir(gendir): continue logger = logging.getLogger('helper') logger.info(' 路徑 %s', gendir) for item in os.listdir(gendir): if item.endswith('.py'): logger.info(' 移除 %s', item) os.remove(gendir + '\\' + item) cache_dir = gendir + '\\' + '__pycache__' if os.path.isdir(cache_dir): logger.info(' 移除 __pycache__') shutil.rmtree(cache_dir)
Example #6
Source File: _pip.py From colabtools with Apache License 2.0 | 6 votes |
def _extract_toplevel_packages(pip_output): """Extract the list of toplevel packages associated with a pip install.""" # Account for default installations and --user installations (most common). # Note: we should possibly also account for --root, --prefix, & -t/--target. sitepackages = site.getsitepackages() + [site.getusersitepackages()] for package in _extract_installed_packages(pip_output): infodir = _get_distinfo_path(package, sitepackages) if not infodir: continue toplevel = os.path.join(infodir, "top_level.txt") if not os.path.exists(toplevel): continue for line in open(toplevel): line = line.strip() if line: yield line
Example #7
Source File: wmi_loader.py From cloudbase-init with Apache License 2.0 | 6 votes |
def wmi(): try: # PyMI depends on the MI API, not available by default on systems older # than Windows 8 / Windows Server 2012 import wmi return wmi except ImportError: LOG.debug("Couldn't load PyMI module, using legacy WMI") wmi_path = None for packages_path in site.getsitepackages(): path = os.path.join(packages_path, "wmi.py") if os.path.isfile(path): wmi_path = path break if wmi_path is None: raise exception.ItemNotFoundException("wmi module not found") return imp.load_source("wmi", wmi_path)
Example #8
Source File: setup.py From scapy-ssl_tls with GNU General Public License v2.0 | 6 votes |
def get_site_packages(): """ This is a hack to work around site.getsitepackages() not working in virtualenv. See https://github.com/pypa/virtualenv/issues/355 """ # Another hack... # Relies on the fact that os.py is in the dir above site_packages os_location = os.path.dirname(os.__file__) site_packages = [] # Consider Debain/Ubuntu custom for site in ["site-packages", "dist-packages"]: site_path = os.path.join(os_location, site) if os.path.isdir(site_path): site_packages.append(site_path) try: site_packages += _site.getsitepackages() except AttributeError, ex: print("WARNING: Error trying to call site.getsitepackages(). Exception: %r" % ex) print(" Do you have sufficient permissions?") print(" Otherwise this could probably be virtualenv issue#355")
Example #9
Source File: setup.py From qibullet with Apache License 2.0 | 6 votes |
def get_install_directory(): """ Return the installation directory, or None """ if '--user' in sys.argv: paths = site.getusersitepackages() else: paths = site.getsitepackages() if isinstance(paths, str): paths = [paths] for path in paths: if platform.system() == "Windows": path += "\\qibullet" else: path += "/qibullet" if os.path.exists(path): return path return None
Example #10
Source File: ops.py From deepsleepnet with Apache License 2.0 | 5 votes |
def get_site_packages_directory(): """Print and return the site-packages directory. Examples --------- >>> loc = tl.ops.get_site_packages_directory() """ import site try: loc = site.getsitepackages() print(" tl.ops : site-packages in ", loc) return loc except: print(" tl.ops : Cannot find package dir from virtual environment") return False
Example #11
Source File: test_site.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_getsitepackages(self): site.PREFIXES = ['xoxo'] dirs = site.getsitepackages() if (sys.platform == "darwin" and sysconfig.get_config_var("PYTHONFRAMEWORK")): # OS X framework builds site.PREFIXES = ['Python.framework'] dirs = site.getsitepackages() self.assertEqual(len(dirs), 2) wanted = os.path.join('/Library', sysconfig.get_config_var("PYTHONFRAMEWORK"), sys.version[:3], 'site-packages') self.assertEqual(dirs[1], wanted) elif os.sep == '/': # OS X non-framwework builds, Linux, FreeBSD, etc self.assertEqual(len(dirs), 1) wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], 'site-packages') self.assertEqual(dirs[0], wanted) else: # other platforms self.assertEqual(len(dirs), 2) self.assertEqual(dirs[0], 'xoxo') wanted = os.path.join('xoxo', 'lib', 'site-packages') self.assertEqual(dirs[1], wanted)
Example #12
Source File: test_site.py From gcblue with BSD 3-Clause "New" or "Revised" License | 5 votes |
def test_getsitepackages(self): site.PREFIXES = ['xoxo'] dirs = site.getsitepackages() if sys.platform in ('os2emx', 'riscos'): self.assertEqual(len(dirs), 1) wanted = os.path.join('xoxo', 'Lib', 'site-packages') self.assertEqual(dirs[0], wanted) elif (sys.platform == "darwin" and sysconfig.get_config_var("PYTHONFRAMEWORK")): # OS X framework builds site.PREFIXES = ['Python.framework'] dirs = site.getsitepackages() self.assertEqual(len(dirs), 3) wanted = os.path.join('/Library', sysconfig.get_config_var("PYTHONFRAMEWORK"), sys.version[:3], 'site-packages') self.assertEqual(dirs[2], wanted) elif os.sep == '/': # OS X non-framwework builds, Linux, FreeBSD, etc self.assertEqual(len(dirs), 2) wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], 'site-packages') self.assertEqual(dirs[0], wanted) wanted = os.path.join('xoxo', 'lib', 'site-python') self.assertEqual(dirs[1], wanted) else: # other platforms self.assertEqual(len(dirs), 2) self.assertEqual(dirs[0], 'xoxo') wanted = os.path.join('xoxo', 'lib', 'site-packages') self.assertEqual(dirs[1], wanted)
Example #13
Source File: zzz_manual_install.py From Python-with-GitHub-PyPI-and-Readthedoc-Guide with MIT License | 5 votes |
def find_DST(): """Find where this package should be installed to. """ if SYS_NAME == "Windows": return os.path.join(site.getsitepackages()[1], PKG_NAME) elif SYS_NAME in ["Darwin", "Linux"]: return os.path.join(site.getsitepackages()[0], PKG_NAME)
Example #14
Source File: package_utils.py From nni with MIT License | 5 votes |
def get_nni_installation_parent_dir(): ''' Find nni installation parent directory ''' def try_installation_path_sequentially(*sitepackages): '''Try different installation path sequentially util nni is found. Return None if nothing is found ''' def _generate_installation_path(sitepackages_path): python_dir = get_python_dir(sitepackages_path) entry_file = os.path.join(python_dir, 'nni', 'main.js') if os.path.isfile(entry_file): return python_dir return None for sitepackage in sitepackages: python_dir = _generate_installation_path(sitepackage) if python_dir: return python_dir return None if os.getenv('VIRTUAL_ENV'): # if 'virtualenv' package is used, `site` has not attr getsitepackages, so we will instead use VIRTUAL_ENV # Note that conda venv will not have VIRTUAL_ENV python_dir = os.getenv('VIRTUAL_ENV') else: python_sitepackage = site.getsitepackages()[0] # If system-wide python is used, we will give priority to using `local sitepackage`--"usersitepackages()" given # that nni exists there if python_sitepackage.startswith('/usr') or python_sitepackage.startswith('/Library'): python_dir = try_installation_path_sequentially(site.getusersitepackages(), site.getsitepackages()[0]) else: python_dir = try_installation_path_sequentially(site.getsitepackages()[0], site.getusersitepackages()) return python_dir
Example #15
Source File: cheat.py From collection with MIT License | 5 votes |
def search_cheat (self): available = [] import site site_system = site.getsitepackages() site_user = site.getusersitepackages() for name in [site_user] + site_system: path = os.path.join(name, 'cheat') if not os.path.exists(path): continue path = os.path.join(path, 'cheatsheets') if not os.path.exists(path): continue available.append(path) return available
Example #16
Source File: test_site.py From ironpython3 with Apache License 2.0 | 5 votes |
def test_getsitepackages(self): site.PREFIXES = ['xoxo'] dirs = site.getsitepackages() if (sys.platform == "darwin" and sysconfig.get_config_var("PYTHONFRAMEWORK")): # OS X framework builds site.PREFIXES = ['Python.framework'] dirs = site.getsitepackages() self.assertEqual(len(dirs), 3) wanted = os.path.join('/Library', sysconfig.get_config_var("PYTHONFRAMEWORK"), sys.version[:3], 'site-packages') self.assertEqual(dirs[2], wanted) elif os.sep == '/': # OS X non-framwework builds, Linux, FreeBSD, etc self.assertEqual(len(dirs), 2) wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], 'site-packages') self.assertEqual(dirs[0], wanted) wanted = os.path.join('xoxo', 'lib', 'site-python') self.assertEqual(dirs[1], wanted) else: # other platforms self.assertEqual(len(dirs), 2) self.assertEqual(dirs[0], 'xoxo') wanted = os.path.join('xoxo', 'lib', 'site-packages') self.assertEqual(dirs[1], wanted)
Example #17
Source File: test_site.py From ironpython3 with Apache License 2.0 | 5 votes |
def test_s_option(self): usersite = site.USER_SITE self.assertIn(usersite, sys.path) env = os.environ.copy() rc = subprocess.call([sys.executable, '-c', 'import sys; sys.exit(%r in sys.path)' % usersite], env=env) self.assertEqual(rc, 1) env = os.environ.copy() rc = subprocess.call([sys.executable, '-s', '-c', 'import sys; sys.exit(%r in sys.path)' % usersite], env=env) if usersite == site.getsitepackages()[0]: self.assertEqual(rc, 1) else: self.assertEqual(rc, 0) env = os.environ.copy() env["PYTHONNOUSERSITE"] = "1" rc = subprocess.call([sys.executable, '-c', 'import sys; sys.exit(%r in sys.path)' % usersite], env=env) if usersite == site.getsitepackages()[0]: self.assertEqual(rc, 1) else: self.assertEqual(rc, 0) env = os.environ.copy() env["PYTHONUSERBASE"] = "/tmp" rc = subprocess.call([sys.executable, '-c', 'import sys, site; sys.exit(site.USER_BASE.startswith("/tmp"))'], env=env) self.assertEqual(rc, 1)
Example #18
Source File: setup.py From supersqlite with MIT License | 5 votes |
def get_site_packages(): """ Gets all site_packages paths """ try: import site if hasattr(site, 'getsitepackages'): site_packages = site.getsitepackages() else: from distutils.sysconfig import get_python_lib site_packages = [get_python_lib()] if hasattr(site, 'getusersitepackages'): site_packages = site_packages + [site.getusersitepackages()] return site_packages except BaseException: return []
Example #19
Source File: test_site.py From Project-New-Reign---Nemesis-Main with GNU General Public License v3.0 | 5 votes |
def test_s_option(self): usersite = site.USER_SITE self.assertIn(usersite, sys.path) env = os.environ.copy() rc = subprocess.call([sys.executable, '-c', 'import sys; sys.exit(%r in sys.path)' % usersite], env=env) self.assertEqual(rc, 1) env = os.environ.copy() rc = subprocess.call([sys.executable, '-s', '-c', 'import sys; sys.exit(%r in sys.path)' % usersite], env=env) if usersite == site.getsitepackages()[0]: self.assertEqual(rc, 1) else: self.assertEqual(rc, 0) env = os.environ.copy() env["PYTHONNOUSERSITE"] = "1" rc = subprocess.call([sys.executable, '-c', 'import sys; sys.exit(%r in sys.path)' % usersite], env=env) if usersite == site.getsitepackages()[0]: self.assertEqual(rc, 1) else: self.assertEqual(rc, 0) env = os.environ.copy() env["PYTHONUSERBASE"] = "/tmp" rc = subprocess.call([sys.executable, '-c', 'import sys, site; sys.exit(site.USER_BASE.startswith("/tmp"))'], env=env) self.assertEqual(rc, 1)
Example #20
Source File: listing.py From import-order with GNU General Public License v3.0 | 5 votes |
def list_site_packages_paths(): site_packages_paths = set([site.USER_SITE]) try: site_packages_paths.update(site.getsitepackages()) except AttributeError: pass try: user_site = site.getusersitepackages() if isinstance(user_site, str): site_packages_paths.add(user_site) else: site_packages_paths.update(user_site) except AttributeError: pass try: virtualenv_path = os.environ['VIRTUAL_ENV'] except KeyError: pass else: virtualenv_src_path = os.path.join(virtualenv_path, 'src') site_packages_paths.update( path for path in sys.path if path.startswith(virtualenv_path) and ( 'site-packages' in path or path.startswith(virtualenv_src_path) ) ) return site_packages_paths
Example #21
Source File: __main__.py From PrettyErrors with MIT License | 5 votes |
def getsitepackages(): pattern = re.compile(r'^%s$' % os.path.join(os.environ['VIRTUAL_ENV'], 'lib', 'python[0-9.]+', 'site-packages')) return [path for path in set(sys.path) if pattern.search(path)]
Example #22
Source File: __main__.py From PrettyErrors with MIT License | 5 votes |
def getallsitepackages(): return getsitepackages() + getusersitepackages()
Example #23
Source File: ops.py From super-resolution-videos with The Unlicense | 5 votes |
def get_site_packages_directory(): """Print and return the site-packages directory. Examples --------- >>> loc = tl.ops.get_site_packages_directory() """ import site try: loc = site.getsitepackages() print(" tl.ops : site-packages in ", loc) return loc except: print(" tl.ops : Cannot find package dir from virtual environment") return False
Example #24
Source File: test_site.py From CTFCrackTools-V2 with GNU General Public License v3.0 | 5 votes |
def test_getsitepackages(self): site.PREFIXES = ['xoxo'] dirs = site.getsitepackages() if sys.platform in ('os2emx', 'riscos') or is_jython: self.assertEqual(len(dirs), 1) wanted = os.path.join('xoxo', 'Lib', 'site-packages') self.assertEqual(dirs[0], wanted) elif (sys.platform == "darwin" and sysconfig.get_config_var("PYTHONFRAMEWORK")): # OS X framework builds site.PREFIXES = ['Python.framework'] dirs = site.getsitepackages() self.assertEqual(len(dirs), 3) wanted = os.path.join('/Library', sysconfig.get_config_var("PYTHONFRAMEWORK"), sys.version[:3], 'site-packages') self.assertEqual(dirs[2], wanted) elif os.sep == '/': # OS X non-framwework builds, Linux, FreeBSD, etc self.assertEqual(len(dirs), 2) wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], 'site-packages') self.assertEqual(dirs[0], wanted) wanted = os.path.join('xoxo', 'lib', 'site-python') self.assertEqual(dirs[1], wanted) else: # other platforms self.assertEqual(len(dirs), 2) self.assertEqual(dirs[0], 'xoxo') wanted = os.path.join('xoxo', 'lib', 'site-packages') self.assertEqual(dirs[1], wanted)
Example #25
Source File: winmake.py From pyftpdlib with MIT License | 5 votes |
def uninstall(): """Uninstall %s""" % PROJECT # Uninstalling on Windows seems to be tricky. # On "import pkgname" tests may import a psutil version living in # C:\PythonXY\Lib\site-packages which is not what we want, so # we try both "pip uninstall psutil" and manually remove stuff # from site-packages. clean() install_pip() here = os.getcwd() try: os.chdir('C:\\') while True: try: import pyftpdlib # NOQA except ImportError: break else: sh("%s -m pip uninstall -y pyftpdlib" % PYTHON) finally: os.chdir(here) for dir in site.getsitepackages(): for name in os.listdir(dir): if name.startswith('pyftpdlib'): rm(os.path.join(dir, name))
Example #26
Source File: purge_installation.py From pyftpdlib with MIT License | 5 votes |
def main(): locations = [site.getusersitepackages()] locations.extend(site.getsitepackages()) for root in locations: if os.path.isdir(root): for name in os.listdir(root): if PKGNAME in name: abspath = os.path.join(root, name) rmpath(abspath)
Example #27
Source File: policy_player.py From rex-gym with Apache License 2.0 | 5 votes |
def __init__(self, env_id: str, args: dict): self.gym_dir_path = str(site.getsitepackages()[0]) self.env_id = env_id self.args = args
Example #28
Source File: tf_test.py From clgen with GNU General Public License v3.0 | 5 votes |
def test_import_tensorflow(): print("Python executable:", sys.executable) print("Python version:", sys.version) print("Python site packages:", site.getsitepackages()) from third_party.py.tensorflow import tf as tensorflow print("Tensorflow:", tensorflow.__file__) print("Tensorflow version:", tensorflow.VERSION)
Example #29
Source File: test_site.py From CTFCrackTools with GNU General Public License v3.0 | 5 votes |
def test_getsitepackages(self): site.PREFIXES = ['xoxo'] dirs = site.getsitepackages() if sys.platform in ('os2emx', 'riscos') or is_jython: self.assertEqual(len(dirs), 1) wanted = os.path.join('xoxo', 'Lib', 'site-packages') self.assertEqual(dirs[0], wanted) elif (sys.platform == "darwin" and sysconfig.get_config_var("PYTHONFRAMEWORK")): # OS X framework builds site.PREFIXES = ['Python.framework'] dirs = site.getsitepackages() self.assertEqual(len(dirs), 3) wanted = os.path.join('/Library', sysconfig.get_config_var("PYTHONFRAMEWORK"), sys.version[:3], 'site-packages') self.assertEqual(dirs[2], wanted) elif os.sep == '/': # OS X non-framwework builds, Linux, FreeBSD, etc self.assertEqual(len(dirs), 2) wanted = os.path.join('xoxo', 'lib', 'python' + sys.version[:3], 'site-packages') self.assertEqual(dirs[0], wanted) wanted = os.path.join('xoxo', 'lib', 'site-python') self.assertEqual(dirs[1], wanted) else: # other platforms self.assertEqual(len(dirs), 2) self.assertEqual(dirs[0], 'xoxo') wanted = os.path.join('xoxo', 'lib', 'site-packages') self.assertEqual(dirs[1], wanted)
Example #30
Source File: systems.py From cauldron with MIT License | 5 votes |
def get_site_packages() -> list: try: return list(site.getsitepackages()) except Exception: return []