Skip to content

Instantly share code, notes, and snippets.

@sushmithapopuri
Created June 2, 2024 11:42
Show Gist options
  • Select an option

  • Save sushmithapopuri/8d7b9198406e3b1dd6b2efeb92d79ac3 to your computer and use it in GitHub Desktop.

Select an option

Save sushmithapopuri/8d7b9198406e3b1dd6b2efeb92d79ac3 to your computer and use it in GitHub Desktop.
from pip._vendor import pkg_resources
dep_list = set()
def get_dependencies(package_name):
package_name = package_name.split('<')[0]
package_name = package_name.split('>')[0]
global dep_list
pkg_dependencies = [str(dep) for dep in pkg_resources.working_set.by_key[package_name].requires()]
print(pkg_dependencies)
if not pkg_dependencies:
dep_list.add(package_name)
else:
for i in pkg_dependencies:
get_dependencies(i)
package = 'pyaudio'
get_dependencies(package)
# print([str(r) for r in list.requires()])
print(dep_list)
# ['charset-normalizer<4,>=2', 'idna<4,>=2.5', 'urllib3<3,>=1.21.1', 'certifi>=2017.4.17']
print(get_dependencies('charset-normalizer'))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment