mirror of https://gitlab.com/bashrc2/epicyon
Remove did fluff from nicknames
These dids are literally pointless - adding no value - and ought to be web urlsmain
parent
73ab5f80d6
commit
8f67458549
12
tests.py
12
tests.py
|
|
@ -3906,6 +3906,14 @@ def _test_actor_parsing():
|
|||
nickname = get_nickname_from_actor(actor)
|
||||
assert nickname == 'othernick'
|
||||
|
||||
actor = 'https://bsky.brid.gy/ap/did:plc:abcdefg'
|
||||
domain, port = get_domain_from_actor(actor)
|
||||
assert domain == 'bsky.brid.gy'
|
||||
nickname = get_nickname_from_actor(actor)
|
||||
if nickname != 'abcdefg':
|
||||
print(nickname)
|
||||
assert nickname == 'abcdefg'
|
||||
|
||||
|
||||
def _test_web_links():
|
||||
print('test_web_links')
|
||||
|
|
@ -9460,9 +9468,9 @@ def _test_bridgy() -> None:
|
|||
'https://brid.gy/convert/ap/at://' + \
|
||||
'did:plc:dcbhwedfgwuyfgwfnj/app.bsky.feed.post/fchbuiweefwui'
|
||||
nickname = get_nickname_from_actor(bridgy_url)
|
||||
if nickname != 'did:plc:dcbhwedfgwuyfgwfnj':
|
||||
if nickname != 'dcbhwedfgwuyfgwfnj':
|
||||
print('nickname: ' + nickname)
|
||||
assert nickname == 'did:plc:dcbhwedfgwuyfgwfnj'
|
||||
assert nickname == 'dcbhwedfgwuyfgwfnj'
|
||||
domain, _ = get_domain_from_actor(bridgy_url)
|
||||
if domain != 'brid.gy':
|
||||
print('domain: ' + domain)
|
||||
|
|
|
|||
17
utils.py
17
utils.py
|
|
@ -1449,6 +1449,12 @@ def get_gender_from_bio(base_dir: str, actor: str, person_cache: {},
|
|||
return gender
|
||||
|
||||
|
||||
def _remove_did_prefix(nickname: str) -> str:
|
||||
"""Removes decentralized ID (DID) prefix from a nickname
|
||||
"""
|
||||
return nickname.replace('did:plc:', '')
|
||||
|
||||
|
||||
def get_nickname_from_actor(actor: str) -> str:
|
||||
"""Returns the nickname from an actor url
|
||||
"""
|
||||
|
|
@ -1464,18 +1470,19 @@ def get_nickname_from_actor(actor: str) -> str:
|
|||
continue
|
||||
nick_str = actor.split(possible_path)[1].replace('@', '')
|
||||
if '/' not in nick_str:
|
||||
return nick_str
|
||||
return nick_str.split('/')[0]
|
||||
return _remove_did_prefix(nick_str)
|
||||
nick_str = nick_str.split('/')[0]
|
||||
return _remove_did_prefix(nick_str)
|
||||
if '/@/' not in actor:
|
||||
if '/@' in actor:
|
||||
# https://domain/@nick
|
||||
nick_str = actor.split('/@')[1]
|
||||
if '/' in nick_str:
|
||||
nick_str = nick_str.split('/')[0]
|
||||
return nick_str
|
||||
return _remove_did_prefix(nick_str)
|
||||
if '@' in actor:
|
||||
nick_str = actor.split('@')[0]
|
||||
return nick_str
|
||||
return _remove_did_prefix(nick_str)
|
||||
if '://' in actor:
|
||||
domain = actor.split('://')[1]
|
||||
if '/' in domain:
|
||||
|
|
@ -1485,7 +1492,7 @@ def get_nickname_from_actor(actor: str) -> str:
|
|||
nick_str = actor.split('://' + domain + '/')[1]
|
||||
if '/' in nick_str or '.' in nick_str:
|
||||
return None
|
||||
return nick_str
|
||||
return _remove_did_prefix(nick_str)
|
||||
return None
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue