@@ -83,7 +83,13 @@ def _format_supplier(self, supplier_info, include_email=True):
8383
8484 def _create_package (self , package , version , parent = "-" ):
8585 self .sbom_package .initialise ()
86- self .package_metadata .get_package (package )
86+ offline = False
87+ try :
88+ self .package_metadata .get_package (package )
89+ except :
90+ offline = True
91+ if self .debug :
92+ print (f"[ERROR] Unable to retrieve metadata for { package } " )
8793 self .sbom_package .set_name (package )
8894 self .sbom_package .set_property ("language" , "Python" )
8995 self .sbom_package .set_property ("python_version" , self .python_version )
@@ -97,7 +103,7 @@ def _create_package(self, package, version, parent="-"):
97103 supplier = self .get ("Author" ) + " " + self .get ("Author-email" )
98104 home_page = self .get ("Home-page" )
99105 summary = self .get ("Summary" )
100- else :
106+ elif not offline :
101107 license_information = self .package_metadata .get_license ()
102108 # Supplier info
103109 supplier = self .package_metadata .get_originator ()
@@ -109,6 +115,11 @@ def _create_package(self, package, version, parent="-"):
109115 summary = self .package_metadata .get_description ()
110116 if summary is None :
111117 summary = ""
118+ else :
119+ license_information = ""
120+ supplier = ""
121+ home_page = ""
122+ summary = ""
112123 license = self .license .find_license (license_information )
113124 # Report license as reported by metadata. If not valid SPDX, report NOASSERTION
114125 if license != license_information :
0 commit comments