diff --git a/src/app.py b/src/app.py
index 7a4d2d381e11728fe25823d04c3e3526a4a623eb..c1e203479a9560971b82c98653160ac0ce7594c1 100644
--- a/src/app.py
+++ b/src/app.py
@@ -19,10 +19,9 @@ def index():
 
 @app.route('/search/<wiktlang>/<wordlang>/<word>', methods=['GET'])
 def search(wiktlang, wordlang, word):
-    en_wiktextract = Wiktextract("en", "en")
-
     wikicode = get_wikicode(word, wiktlang)
     if wikicode:
+      en_wiktextract = Wiktextract("en", wordlang)
       try:
         resp = en_wiktextract.parse_page(word, wikicode)
         return jsonify(resp)
@@ -41,6 +40,8 @@ def search(wiktlang, wordlang, word):
                     </html>"""
         status = 404
         mimetype='text/html'
+      finally:
+        en_wiktextract.page_handler.wxr.wtp.db_conn.close()
 
     else:
       resp =  f"""<!doctype html>