src/core/wp_utils.py
changeset 63 a7f4a418d5af
parent 61 0048668779c0
child 67 5d9223bb3aab
equal deleted inserted replaced
62:33fd91a414cc 63:a7f4a418d5af
     1 # -*- coding: utf-8 -*-
     1 # -*- coding: utf-8 -*-
     2 from .models import Term, TermLabel, TERM_URL_STATUS_DICT
     2 from .models import Term, TermLabel, TERM_URL_STATUS_DICT
       
     3 from core.models.term import TERM_WK_LINK_SEMANTIC_LEVEL_DICT
     3 from django.conf import settings
     4 from django.conf import settings
     4 from django.utils.http import urlquote
     5 from django.utils.http import urlquote
       
     6 from urlparse import urlparse
     5 from wikitools import api, wiki
     7 from wikitools import api, wiki
     6 import logging
     8 import logging
     7 from core.models.term import TERM_WK_LINK_SEMANTIC_LEVEL_DICT
     9 import urllib2
     8 
    10 
     9 logger = logging.getLogger(__name__)
    11 logger = logging.getLogger(__name__)
    10 site = None
    12 site = None
    11 
    13 
    12 def __get_site():
    14 def __get_site():
   170     if site == None:
   172     if site == None:
   171         site = wiki.Wiki(settings.WIKIPEDIA_API_URL)  # @UndefinedVariable
   173         site = wiki.Wiki(settings.WIKIPEDIA_API_URL)  # @UndefinedVariable
   172         
   174         
   173     if not label:
   175     if not label:
   174         label = term.label
   176         label = term.label
       
   177     elif label.startswith(settings.WIKIPEDIA_PAGE_URL):
       
   178         url_parts = urlparse(label)
       
   179         label = urllib2.unquote(str(url_parts.path.split('/')[-1])).decode("utf-8")
       
   180 
   175     wp_res = query_wikipedia_title(site, label=label)
   181     wp_res = query_wikipedia_title(site, label=label)
   176     new_label = wp_res['new_label']
   182     new_label = wp_res['new_label']
   177     alternative_label= wp_res['alternative_label']
   183     alternative_label= wp_res['alternative_label']
   178     status =  wp_res['status']
   184     status =  wp_res['status']
   179     url = wp_res['wikipedia_url']
   185     url = wp_res['wikipedia_url']