33import logging
44from hydra_agent .hydra_graph import InitialGraph
55import urllib .request
6+ from urllib .parse import urljoin
67import json
7- from hydrus . hydraspec import doc_maker
8+ from hydra_python_core import doc_maker
89from urllib .error import URLError , HTTPError
910from hydra_agent .collections_endpoint import CollectionEndpoints
1011from hydra_agent .classes_objects import ClassEndpoints ,RequestError
@@ -29,18 +30,17 @@ def load_data(self, url):
2930 :return: loaded data
3031 """
3132 try :
32- response = urllib .request .urlopen (url )
33+ with urllib .request .urlopen (url ) as response :
34+ return json .loads (response .read ().decode ('utf-8' ))
3335 except HTTPError as e :
34- logger .info ('Error code: ' , e .code )
36+ logger .error ('Error Code: {}' . format ( e .code ) )
3537 return RequestError ("error" )
3638 except URLError as e :
37- logger .info ('Reason: ' , e .reason )
39+ logger .error ('Reason: {}' . format ( e .reason ) )
3840 return RequestError ("error" )
3941 except ValueError as e :
40- logger .info ( "value error:" , e )
42+ logger .error ( "Value Error: {}" . format ( e ) )
4143 return RequestError ("error" )
42- else :
43- return json .loads (response .read ().decode ('utf-8' ))
4444
4545 def show_data (self , get_data ):
4646 """
@@ -658,7 +658,7 @@ def query(apidoc, url):
658658
659659 while True :
660660 print ("press exit to quit" )
661- query = input (">>>" )
661+ query = input (">>>" ). strip ()
662662 if query == "exit" :
663663 break
664664 elif query == "help" :
@@ -672,7 +672,7 @@ def main():
672672 Take URL as an input and make graph using initilize function.
673673 :return: call query function for more query.
674674 """
675- url = input ("url>>>" )
675+ url = input ("url>>>" ). strip ()
676676 if url == "exit" :
677677 print ("exit..." )
678678 return 0
@@ -681,11 +681,13 @@ def main():
681681 while True :
682682 if isinstance (apidoc , RequestError ):
683683 print ("enter right url" )
684- url = input ("url>>>" )
684+ url = input ("url>>>" ). strip ()
685685 if url == "exit" :
686686 print ("exit..." )
687687 return 0
688- apidoc = handle_data .load_data (url + "/vocab" )
688+ url = url .rstrip ('/' ) + '/'
689+ url = urljoin (url , 'vocab' )
690+ apidoc = handle_data .load_data (url )
689691 else :
690692 break
691693 return query (apidoc , url )
0 commit comments