diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2021-11-10 14:12:59 -0800 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2021-11-10 14:14:48 -0800 |
commit | 1d1700678747ae711afbf105b962c5a1db3e7196 (patch) | |
tree | 4a7219aaebe6e48831f805728da3b77206f88a1e /python/fatcat_tools/normal.py | |
parent | ddc757bc1d5c610f42e9f5f10a4f060f517b66ca (diff) | |
download | fatcat-1d1700678747ae711afbf105b962c5a1db3e7196.tar.gz fatcat-1d1700678747ae711afbf105b962c5a1db3e7196.zip |
improve lookup_license_slug helper and lookup table
Diffstat (limited to 'python/fatcat_tools/normal.py')
-rw-r--r-- | python/fatcat_tools/normal.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/python/fatcat_tools/normal.py b/python/fatcat_tools/normal.py index fc80411c..dd0a4f74 100644 --- a/python/fatcat_tools/normal.py +++ b/python/fatcat_tools/normal.py @@ -611,12 +611,15 @@ def test_parse_country_name() -> None: def lookup_license_slug(raw: Optional[str]) -> Optional[str]: if not raw: return None - raw = raw.strip().replace("http://", "//").replace("https://", "//") - if "creativecommons.org" in raw.lower(): - raw = raw.lower() - raw = raw.replace("/legalcode", "/").replace("/uk", "") - if not raw.endswith("/"): - raw = raw + "/" + # normalize to lower-case and not ending with a slash + raw = raw.strip().lower() + if raw.endswith("/"): + raw = raw[:-1] + # remove http/https prefix + raw = raw.replace("http://", "//").replace("https://", "//") + # special-case normalization of CC licenses + if "creativecommons.org" in raw: + raw = raw.replace("/legalcode", "").replace("/uk", "") return LICENSE_SLUG_MAP.get(raw) |