mirror of https://github.com/MISP/misp-modules
chg: [doc] documentation generator updated to include links to source code
parent
e2cebd6c3e
commit
f9788c8fd3
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
## Expansion Modules
|
## Expansion Modules
|
||||||
|
|
||||||
#### asn_history
|
#### [asn_history](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/asn_history.py)
|
||||||
|
|
||||||
Query an ASN description history service (https://github.com/CIRCL/ASN-Description-History.git).
|
Query an ASN description history service (https://github.com/CIRCL/ASN-Description-History.git).
|
||||||
- **requirements**:
|
- **requirements**:
|
||||||
|
@ -10,7 +10,7 @@ Query an ASN description history service (https://github.com/CIRCL/ASN-Descripti
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### circl_passivedns
|
#### [circl_passivedns](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/circl_passivedns.py)
|
||||||
|
|
||||||
<img src=logos/passivedns.png height=60>
|
<img src=logos/passivedns.png height=60>
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ Module to access CIRCL Passive DNS.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### circl_passivessl
|
#### [circl_passivessl](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/circl_passivessl.py)
|
||||||
|
|
||||||
<img src=logos/passivessl.png height=60>
|
<img src=logos/passivessl.png height=60>
|
||||||
|
|
||||||
|
@ -26,13 +26,13 @@ Modules to access CIRCL Passive SSL.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### countrycode
|
#### [countrycode](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/countrycode.py)
|
||||||
|
|
||||||
Module to expand country codes.
|
Module to expand country codes.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### crowdstrike_falcon
|
#### [crowdstrike_falcon](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/crowdstrike_falcon.py)
|
||||||
|
|
||||||
<img src=logos/crowdstrike.png height=60>
|
<img src=logos/crowdstrike.png height=60>
|
||||||
|
|
||||||
|
@ -40,13 +40,13 @@ Module to query Crowdstrike Falcon.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### cve
|
#### [cve](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/cve.py)
|
||||||
|
|
||||||
An expansion hover module to expand information about CVE id.
|
An expansion hover module to expand information about CVE id.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### dbl_spamhaus
|
#### [dbl_spamhaus](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/dbl_spamhaus.py)
|
||||||
|
|
||||||
<img src=logos/spamhaus.jpg height=60>
|
<img src=logos/spamhaus.jpg height=60>
|
||||||
|
|
||||||
|
@ -54,13 +54,13 @@ Module to check Spamhaus DBL for a domain name.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### dns
|
#### [dns](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/dns.py)
|
||||||
|
|
||||||
A simple DNS expansion service to resolve IP address from MISP attributes.
|
A simple DNS expansion service to resolve IP address from MISP attributes.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### domaintools
|
#### [domaintools](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/domaintools.py)
|
||||||
|
|
||||||
<img src=logos/domaintools.png height=60>
|
<img src=logos/domaintools.png height=60>
|
||||||
|
|
||||||
|
@ -68,7 +68,7 @@ DomainTools MISP expansion module.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### eupi
|
#### [eupi](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/eupi.py)
|
||||||
|
|
||||||
<img src=logos/eupi.png height=60>
|
<img src=logos/eupi.png height=60>
|
||||||
|
|
||||||
|
@ -76,7 +76,7 @@ A module to query the Phishing Initiative service (https://phishing-initiative.l
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### farsight_passivedns
|
#### [farsight_passivedns](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/farsight_passivedns.py)
|
||||||
|
|
||||||
<img src=logos/farsight.png height=60>
|
<img src=logos/farsight.png height=60>
|
||||||
|
|
||||||
|
@ -84,31 +84,31 @@ Module to access Farsight DNSDB Passive DNS.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### geoip_country
|
#### [geoip_country](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/geoip_country.py)
|
||||||
|
|
||||||
Module to query a local copy of Maxminds Geolite database.
|
Module to query a local copy of Maxminds Geolite database.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### intelmq_eventdb
|
#### [intelmq_eventdb](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/intelmq_eventdb.py)
|
||||||
|
|
||||||
Module to access intelmqs eventdb.
|
Module to access intelmqs eventdb.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### ipasn
|
#### [ipasn](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/ipasn.py)
|
||||||
|
|
||||||
Module to query an IP ASN history service (https://github.com/CIRCL/IP-ASN-history.git).
|
Module to query an IP ASN history service (https://github.com/CIRCL/IP-ASN-history.git).
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### iprep
|
#### [iprep](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/iprep.py)
|
||||||
|
|
||||||
Module to query IPRep data for IP addresses.
|
Module to query IPRep data for IP addresses.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### onyphe
|
#### [onyphe](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/onyphe.py)
|
||||||
|
|
||||||
<img src=logos/onyphe.jpg height=60>
|
<img src=logos/onyphe.jpg height=60>
|
||||||
|
|
||||||
|
@ -116,7 +116,7 @@ Module to process a query on Onyphe.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### onyphe_full
|
#### [onyphe_full](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/onyphe_full.py)
|
||||||
|
|
||||||
<img src=logos/onyphe.jpg height=60>
|
<img src=logos/onyphe.jpg height=60>
|
||||||
|
|
||||||
|
@ -124,7 +124,7 @@ Module to process a full query on Onyphe.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### otx
|
#### [otx](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/otx.py)
|
||||||
|
|
||||||
<img src=logos/otx.png height=60>
|
<img src=logos/otx.png height=60>
|
||||||
|
|
||||||
|
@ -132,7 +132,7 @@ Module to get information from AlienVault OTX.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### passivetotal
|
#### [passivetotal](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/passivetotal.py)
|
||||||
|
|
||||||
<img src=logos/passivetotal.png height=60>
|
<img src=logos/passivetotal.png height=60>
|
||||||
|
|
||||||
|
@ -140,7 +140,7 @@ The PassiveTotal MISP expansion module brings the datasets derived from Internet
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### rbl
|
#### [rbl](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/rbl.py)
|
||||||
|
|
||||||
Module to check an IPv4 address against known RBLs.
|
Module to check an IPv4 address against known RBLs.
|
||||||
- **requirements**:
|
- **requirements**:
|
||||||
|
@ -148,13 +148,13 @@ Module to check an IPv4 address against known RBLs.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### reversedns
|
#### [reversedns](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/reversedns.py)
|
||||||
|
|
||||||
Simple Reverse DNS expansion service to resolve reverse DNS from MISP attributes.
|
Simple Reverse DNS expansion service to resolve reverse DNS from MISP attributes.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### shodan
|
#### [shodan](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/shodan.py)
|
||||||
|
|
||||||
<img src=logos/shodan.png height=60>
|
<img src=logos/shodan.png height=60>
|
||||||
|
|
||||||
|
@ -162,13 +162,13 @@ Module to query on Shodan.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### sourcecache
|
#### [sourcecache](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/sourcecache.py)
|
||||||
|
|
||||||
Module to cache web pages of analysis reports, OSINT sources. The module returns a link of the cached page.
|
Module to cache web pages of analysis reports, OSINT sources. The module returns a link of the cached page.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### threatcrowd
|
#### [threatcrowd](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/threatcrowd.py)
|
||||||
|
|
||||||
<img src=logos/threatcrowd.png height=60>
|
<img src=logos/threatcrowd.png height=60>
|
||||||
|
|
||||||
|
@ -176,7 +176,7 @@ Module to get information from ThreatCrowd.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### threatminer
|
#### [threatminer](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/threatminer.py)
|
||||||
|
|
||||||
<img src=logos/threatminer.png height=60>
|
<img src=logos/threatminer.png height=60>
|
||||||
|
|
||||||
|
@ -184,7 +184,7 @@ Module to get information from ThreatMiner.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### virustotal
|
#### [virustotal](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/virustotal.py)
|
||||||
|
|
||||||
<img src=logos/virustotal.png height=60>
|
<img src=logos/virustotal.png height=60>
|
||||||
|
|
||||||
|
@ -192,7 +192,7 @@ Module to get information from virustotal.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### vmray_submit
|
#### [vmray_submit](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/vmray_submit.py)
|
||||||
|
|
||||||
<img src=logos/vmray.png height=60>
|
<img src=logos/vmray.png height=60>
|
||||||
|
|
||||||
|
@ -200,7 +200,7 @@ Module to submit a sample to VMRay.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### vulndb
|
#### [vulndb](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/vulndb.py)
|
||||||
|
|
||||||
<img src=logos/vulndb.png height=60>
|
<img src=logos/vulndb.png height=60>
|
||||||
|
|
||||||
|
@ -208,7 +208,7 @@ Module to query VulnDB (RiskBasedSecurity.com).
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### whois
|
#### [whois](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/whois.py)
|
||||||
|
|
||||||
Module to query a local instance of uwhois (https://github.com/rafiot/uwhoisd).
|
Module to query a local instance of uwhois (https://github.com/rafiot/uwhoisd).
|
||||||
- **requirements**:
|
- **requirements**:
|
||||||
|
@ -216,7 +216,7 @@ Module to query a local instance of uwhois (https://github.com/rafiot/uwhoisd).
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### wiki
|
#### [wiki](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/wiki.py)
|
||||||
|
|
||||||
<img src=logos/wikidata.png height=60>
|
<img src=logos/wikidata.png height=60>
|
||||||
|
|
||||||
|
@ -224,7 +224,7 @@ An expansion hover module to extract information from Wikidata to have additiona
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### xforceexchange
|
#### [xforceexchange](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/xforceexchange.py)
|
||||||
|
|
||||||
<img src=logos/xforce.png height=60>
|
<img src=logos/xforce.png height=60>
|
||||||
|
|
||||||
|
@ -232,7 +232,7 @@ An expansion module for IBM X-Force Exchange.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### yara_syntax_validator
|
#### [yara_syntax_validator](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/expansion/yara_syntax_validator.py)
|
||||||
|
|
||||||
<img src=logos/yara.png height=60>
|
<img src=logos/yara.png height=60>
|
||||||
|
|
||||||
|
@ -242,7 +242,7 @@ An expansion hover module to perform a syntax check on if yara rules are valid o
|
||||||
|
|
||||||
## Export Modules
|
## Export Modules
|
||||||
|
|
||||||
#### cef_export
|
#### [cef_export](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/export_mod/cef_export.py)
|
||||||
|
|
||||||
Module to export a MISP event in CEF format.
|
Module to export a MISP event in CEF format.
|
||||||
- **features**:
|
- **features**:
|
||||||
|
@ -257,7 +257,7 @@ Module to export a MISP event in CEF format.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### goamlexport
|
#### [goamlexport](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/export_mod/goamlexport.py)
|
||||||
|
|
||||||
<img src=logos/goAML.jpg height=60>
|
<img src=logos/goAML.jpg height=60>
|
||||||
|
|
||||||
|
@ -292,7 +292,7 @@ This module is used to export MISP events containing transaction objects into Go
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### liteexport
|
#### [liteexport](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/export_mod/liteexport.py)
|
||||||
|
|
||||||
Lite export of a MISP event.
|
Lite export of a MISP event.
|
||||||
- **features**:
|
- **features**:
|
||||||
|
@ -304,7 +304,7 @@ Lite export of a MISP event.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### pdfexport
|
#### [pdfexport](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/export_mod/pdfexport.py)
|
||||||
|
|
||||||
Simple export of a MISP event to PDF.
|
Simple export of a MISP event to PDF.
|
||||||
- **requirements**:
|
- **requirements**:
|
||||||
|
@ -320,13 +320,13 @@ Simple export of a MISP event to PDF.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### testexport
|
#### [testexport](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/export_mod/testexport.py)
|
||||||
|
|
||||||
Skeleton export module.
|
Skeleton export module.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### threatStream_misp_export
|
#### [threatStream_misp_export](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/export_mod/threatStream_misp_export.py)
|
||||||
|
|
||||||
<img src=logos/threatstream.png height=60>
|
<img src=logos/threatstream.png height=60>
|
||||||
|
|
||||||
|
@ -344,7 +344,7 @@ Module to export a structured CSV file for uploading to threatStream.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### threat_connect_export
|
#### [threat_connect_export](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/export_mod/threat_connect_export.py)
|
||||||
|
|
||||||
<img src=logos/threatconnect.png height=60>
|
<img src=logos/threatconnect.png height=60>
|
||||||
|
|
||||||
|
@ -365,7 +365,7 @@ Module to export a structured CSV file for uploading to ThreatConnect.
|
||||||
|
|
||||||
## Import Modules
|
## Import Modules
|
||||||
|
|
||||||
#### csvimport
|
#### [csvimport](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/csvimport.py)
|
||||||
|
|
||||||
Module to import MISP attributes from a csv file.
|
Module to import MISP attributes from a csv file.
|
||||||
- **requirements**:
|
- **requirements**:
|
||||||
|
@ -386,7 +386,7 @@ Module to import MISP attributes from a csv file.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### cuckooimport
|
#### [cuckooimport](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/cuckooimport.py)
|
||||||
|
|
||||||
<img src=logos/cuckoo.png height=60>
|
<img src=logos/cuckoo.png height=60>
|
||||||
|
|
||||||
|
@ -402,7 +402,7 @@ Module to import Cuckoo JSON.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### email_import
|
#### [email_import](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/email_import.py)
|
||||||
|
|
||||||
Module to import emails in MISP.
|
Module to import emails in MISP.
|
||||||
- **features**:
|
- **features**:
|
||||||
|
@ -415,7 +415,7 @@ Module to import emails in MISP.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### goamlimport
|
#### [goamlimport](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/goamlimport.py)
|
||||||
|
|
||||||
<img src=logos/goAML.jpg height=60>
|
<img src=logos/goAML.jpg height=60>
|
||||||
|
|
||||||
|
@ -433,7 +433,7 @@ Module to import MISP objects about financial transactions from GoAML files.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### mispjson
|
#### [mispjson](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/mispjson.py)
|
||||||
|
|
||||||
Module to import MISP JSON format for merging MISP events.
|
Module to import MISP JSON format for merging MISP events.
|
||||||
- **features**:
|
- **features**:
|
||||||
|
@ -445,7 +445,7 @@ Module to import MISP JSON format for merging MISP events.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### ocr
|
#### [ocr](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/ocr.py)
|
||||||
|
|
||||||
Optical Character Recognition (OCR) module for MISP.
|
Optical Character Recognition (OCR) module for MISP.
|
||||||
- **features**:
|
- **features**:
|
||||||
|
@ -457,7 +457,7 @@ Optical Character Recognition (OCR) module for MISP.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### openiocimport
|
#### [openiocimport](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/openiocimport.py)
|
||||||
|
|
||||||
Module to import OpenIOC packages.
|
Module to import OpenIOC packages.
|
||||||
- **requirements**:
|
- **requirements**:
|
||||||
|
@ -473,7 +473,7 @@ Module to import OpenIOC packages.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### threatanalyzer_import
|
#### [threatanalyzer_import](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/threatanalyzer_import.py)
|
||||||
|
|
||||||
Module to import ThreatAnalyzer archive.zip / analysis.json files.
|
Module to import ThreatAnalyzer archive.zip / analysis.json files.
|
||||||
- **features**:
|
- **features**:
|
||||||
|
@ -488,7 +488,7 @@ Module to import ThreatAnalyzer archive.zip / analysis.json files.
|
||||||
|
|
||||||
-----
|
-----
|
||||||
|
|
||||||
#### vmray_import
|
#### [vmray_import](https://github.com/MISP/misp-modules/tree/master/misp_modules/modules/import_mod/vmray_import.py)
|
||||||
|
|
||||||
<img src=logos/vmray.png height=60>
|
<img src=logos/vmray.png height=60>
|
||||||
|
|
||||||
|
|
|
@ -5,14 +5,18 @@ import json
|
||||||
module_types = ['expansion', 'export_mod', 'import_mod']
|
module_types = ['expansion', 'export_mod', 'import_mod']
|
||||||
titles = ['Expansion Modules', 'Export Modules', 'Import Modules']
|
titles = ['Expansion Modules', 'Export Modules', 'Import Modules']
|
||||||
markdown= ["# MISP modules documentation\n"]
|
markdown= ["# MISP modules documentation\n"]
|
||||||
|
githublink = 'https://github.com/MISP/misp-modules/tree/master/misp_modules/modules'
|
||||||
|
|
||||||
def generate_doc(root_path):
|
def generate_doc(root_path):
|
||||||
for _path, title in zip(module_types, titles):
|
for _path, title in zip(module_types, titles):
|
||||||
markdown.append('\n## {}\n'.format(title))
|
markdown.append('\n## {}\n'.format(title))
|
||||||
current_path = os.path.join(root_path, _path)
|
current_path = os.path.join(root_path, _path)
|
||||||
files = sorted(os.listdir(current_path))
|
files = sorted(os.listdir(current_path))
|
||||||
|
githubpath = '{}/{}'.format(githublink, _path)
|
||||||
for _file in files:
|
for _file in files:
|
||||||
markdown.append('\n#### {}\n'.format(_file.split('.json')[0]))
|
modulename = _file.split('.json')[0]
|
||||||
|
githubref = '{}/{}.py'.format(githubpath, modulename)
|
||||||
|
markdown.append('\n#### [{}]({})\n'.format(modulename, githubref))
|
||||||
filename = os.path.join(current_path, _file)
|
filename = os.path.join(current_path, _file)
|
||||||
with open(filename, 'rt', encoding='utf-8') as f:
|
with open(filename, 'rt', encoding='utf-8') as f:
|
||||||
definition = json.loads(f.read())
|
definition = json.loads(f.read())
|
||||||
|
|
Loading…
Reference in New Issue