Ну если у вас текст выглядит как
'https://site.com/:' + 'login@hutchdyer.com:' + 'password'
то я бы разбила сплитом по ":" и достала бы нужные части по индексу с конца.
Но вот если у вас пароль будет содержать те же символы (':') то такой способ не подойдёт, я бы предложила такой вариант:
s = 'https://site.com/:login@gmail.com:pass:wo:::rd'
sList = s.split(':')
login = sList[2]
password = ':'.join(sList[3:])
print(login, password)