2013-04-05 4 views
-6

와 목록을 통해 방법 :방법, 예를 들어, urlparse와 목록을 통해하는 urlparse

from urlparse import urlparse 
class Paste(models.Model): 
    paste = models.TextField() 

    def render_url(self): 
     return ['{0}'.format(url) for url in self.paste.split()] 

    def server(self): 
     url_parse = urlparse(self.render_url) 
     return url_parse.hostname.lstrip('www.') 

Example: 
       Paste:      Result 
http://www.example2.com/32/skwieq.html >> Hostname example2.com 
http://www.example2.com/2/cxvxcveq.html >> Hostname example2.com 
http://www.example4.com/10/skasd1ieq.html >> Hostname example4.com 
http://www.example4.com/x/ooqweeq.html >> Hostname example4.com 

어떤 제안이 감사해야 할 일.

+1

당신이 "목록을"무엇을 의미합니까? – tacaswell

+0

@tcaswell : 전치법은 어떨까요? – abarnert

답변

3

이 어떻게 urlparse 작품이다

>>> from urlparse import urlparse 
>>> o = urlparse('http://www.example2.com/32/skwieq.html') 
>>> o 
ParseResult(scheme='http', netloc='www.example2.com', path='/32/skwieq.html', 
      params='', query='', fragment='') 

원하는 형식으로 결과를 얻으려면 :

>>> o.hostname.split('.', 1)[1] 
example2.com 


def server(self): 
    from urlparse import urlparse 
    url_parse = urlparse(self.render_url) 
    hostname = None 
    hostname = url_parse.hostname.split('.', 1)[1] if url_parse.hostname 
    return hostname 
+0

안녕하십니까. 도움을 주셔서 감사합니다.하지만 한 가지 문제가 있습니다. 'function'객체에 'find'속성이 없습니다. 질문에 표시되는 코드에서 –

+0

을 찾았습니다. 찾을 수 없습니다. 해당 코드로 질문을 편집 할 수 있습니까? – karthikr