2016-04-21 16 views
3

Wie konnte ich leicht Hostnamen von einer Git-URL wie ssh://[email protected]:3333/org/repo.gitParsen Sie eine Git-URL wie 'ssh: //[email protected]: 3333/org/repo.git'?

u = urlparse(s) 

extrahieren gibt mir

ParseResult(scheme='ssh', netloc='[email protected]:3333', path='/org/repo.git', params='', query='', fragment='') 

was bedeutet, dass Netloc am nächsten ist, was ich will, und das läßt mich eine enttäuschende Menge an Arbeit .

Sollte ich

u.netloc.split('@')[1].split(':')[0] 

oder gibt es eine Bibliothek, die es besser behandelt?

Antwort

7

Der zurück ParseResult hat ein hostname Attribut:

>>> urlparse('ssh://[email protected]:3333/org/repo.git').hostname 
'gitlab.org.net' 
+0

Aus irgendeinem Grund die Dokumentation für parseResult keine Informationen über ParseResult.hostname enthalten. https://docs.python.org/2.7/library/urlparse.html#module-urlparse jedoch. – cowlinator