db connection and oss file count
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
from swagger_server import db_utils
|
||||
from swagger_server.utils import db_utils
|
||||
from swagger_server import util
|
||||
from flask import send_file
|
||||
|
||||
@@ -27,7 +27,7 @@ def get_conllus(leta, vrste, kljucnebesede, cerifpodrocja): # noqa: E501
|
||||
return ' '.join(files), 200
|
||||
|
||||
|
||||
def get_extracted_words(leta, vrste, kljucnebesede, cerifpodrocja): # noqa: E501
|
||||
def get_extracted_words(leta=None, vrste=None, kljucnebesede=None, udk=None): # noqa: E501
|
||||
"""Vrne terminloške kandidate glede na
|
||||
|
||||
# noqa: E501
|
||||
@@ -70,7 +70,7 @@ def get_files(leta, vrste, kljucnebesede, cerifpodrocja): # noqa: E501
|
||||
return ' '.join(files), 200
|
||||
|
||||
|
||||
def get_number_texts(leta, vrste, kljucnebesede, cerifpodrocja): # noqa: E501
|
||||
def get_number_texts(leta=None, vrste=None, kljucnebesede=None, udk=None): # noqa: E501
|
||||
"""Vrne število besedil glede na iskalne pogoje
|
||||
|
||||
# noqa: E501
|
||||
@@ -86,9 +86,10 @@ def get_number_texts(leta, vrste, kljucnebesede, cerifpodrocja): # noqa: E501
|
||||
|
||||
:rtype: int
|
||||
"""
|
||||
if not kljucnebesede:
|
||||
return "Manjkajo kljucne besede", 400
|
||||
files = db_utils.get_files_by_udc(kljucnebesede)
|
||||
#if not kljucnebesede:
|
||||
# return "Manjkajo kljucne besede", 400
|
||||
|
||||
files = db_utils.vrni_oss_dokumente(leta, vrste, kljucnebesede, udk)
|
||||
return len(files), 200
|
||||
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ class Job(BaseModel):
|
||||
input_file = TextField(index=True, null=True)
|
||||
|
||||
|
||||
# db.drop_tables([Job]) # TODO: After pushing this, comment it and push again
|
||||
db.drop_tables([Job]) # TODO: After pushing this, comment it and push again
|
||||
db.create_tables([Job])
|
||||
|
||||
|
||||
|
||||
@@ -293,7 +293,7 @@ paths:
|
||||
parameters:
|
||||
- name: leta
|
||||
in: query
|
||||
required: true
|
||||
required: false
|
||||
style: form
|
||||
explode: true
|
||||
schema:
|
||||
@@ -303,25 +303,7 @@ paths:
|
||||
format: int64
|
||||
- name: vrste
|
||||
in: query
|
||||
required: true
|
||||
style: form
|
||||
explode: true
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
- name: kljucnebesede
|
||||
in: query
|
||||
required: true
|
||||
style: form
|
||||
explode: true
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
- name: cerifpodrocja
|
||||
in: query
|
||||
required: true
|
||||
required: false
|
||||
style: form
|
||||
explode: true
|
||||
schema:
|
||||
@@ -329,6 +311,24 @@ paths:
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
- name: kljucnebesede
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: true
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
- name: udk
|
||||
in: query
|
||||
required: false
|
||||
style: form
|
||||
explode: true
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
responses:
|
||||
"200":
|
||||
description: OK
|
||||
@@ -364,7 +364,8 @@ paths:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
type: integer
|
||||
format: int64
|
||||
- name: kljucnebesede
|
||||
in: query
|
||||
required: true
|
||||
@@ -374,7 +375,7 @@ paths:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
- name: cerifpodrocja
|
||||
- name: udk
|
||||
in: query
|
||||
required: true
|
||||
style: form
|
||||
@@ -382,8 +383,7 @@ paths:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
type: string
|
||||
responses:
|
||||
"200":
|
||||
description: OK
|
||||
|
||||
@@ -2,30 +2,86 @@ import mariadb
|
||||
import os
|
||||
import sys
|
||||
|
||||
|
||||
|
||||
database_info = {
|
||||
'database': os.environ.get("MDB_DATABASE", default="true"),
|
||||
'host': os.environ.get("MDB_HOST", default="true"),
|
||||
'port': os.environ.get("MDB_PORT", default="true"),
|
||||
'user': os.environ.get("MDB_USER", default="true"),
|
||||
'password': os.environ.get("MDB_PASSWORD", default="true"),
|
||||
'database': os.getenv("MDB_DATABASE", "oss"),
|
||||
'host': os.getenv("MDB_HOST", "localhost"),
|
||||
'port': int(os.getenv("PORT", 3306)) ,
|
||||
'user': os.getenv("MDB_USER", "root"),
|
||||
'password': os.getenv("MDB_PASSWORD", "root"),
|
||||
}
|
||||
|
||||
cur = None
|
||||
|
||||
# Connect to MariaDB Platform
|
||||
|
||||
|
||||
def get_files_by_udc(udc):
|
||||
ret = []
|
||||
ret = []
|
||||
|
||||
try:
|
||||
try:
|
||||
print(database_info)
|
||||
conn = mariadb.connect(**database_info)
|
||||
cur = conn.cursor()
|
||||
#cur.execute(f'SELECT * from os2022_ngrams WHERE file_id = {file_id}')
|
||||
where_in = ','.join(['%s'] * len(udc))
|
||||
print(where_in)
|
||||
sql = "select distinct xml_id from metadata_udc where udk IN (%s)" % (where_in)
|
||||
print(sql)
|
||||
cur.execute(sql,udc)
|
||||
#cur.execute(f'SELECT COUNT(*) FROM os2022_ngrams')
|
||||
#ret = list(cur)
|
||||
ret = list(cur)
|
||||
except mariadb.Error as e:
|
||||
print(f"Error connecting to MariaDB Platform: {e}")
|
||||
|
||||
|
||||
return ret
|
||||
|
||||
def vrni_oss_dokumente(leta, vrste, kljucnebesede, udk):
|
||||
ret = []
|
||||
|
||||
try:
|
||||
print(database_info)
|
||||
conn = mariadb.connect(**database_info)
|
||||
cur = conn.cursor()
|
||||
|
||||
|
||||
|
||||
sql = "select distinct xml_id from metadata"
|
||||
where=""
|
||||
params=[]
|
||||
if (udk):
|
||||
where_in_udk = ','.join(['%s'] * len(udk))
|
||||
where=" udk IN (%s) " % (where_in_udk)
|
||||
params=udk
|
||||
|
||||
if (leta):
|
||||
|
||||
where_in_leta = ','.join(['%s'] * len(leta))
|
||||
if (where):
|
||||
where=where+ " AND "
|
||||
where=where + " leto IN (%s) " % (where_in_leta)
|
||||
params=params+leta
|
||||
|
||||
if (vrste):
|
||||
if (where):
|
||||
where=where+ " AND "
|
||||
where_in_vrste = ','.join(['%s'] * len(vrste))
|
||||
where=where + " tipologija IN (%s) " % (where_in_vrste)
|
||||
params=params+vrste
|
||||
|
||||
if (kljucnebesede):
|
||||
if (where):
|
||||
where=where+ " AND "
|
||||
where_in_kb = ','.join(['%s'] * len(kljucnebesede))
|
||||
where=where + " kljucnabeseda IN (%s) " % (where_in_kb)
|
||||
params=params+kljucnebesede
|
||||
|
||||
if(where):
|
||||
sql=sql+" where " + where
|
||||
|
||||
print(sql)
|
||||
print(params)
|
||||
|
||||
cur.execute(sql,params)
|
||||
|
||||
ret = list(cur)
|
||||
except mariadb.Error as e:
|
||||
print(f"Error connecting to MariaDB Platform: {e}")
|
||||
|
||||
@@ -51,14 +107,14 @@ def get_files_by_udc(udc):
|
||||
# db.connect()
|
||||
|
||||
|
||||
class Ngrams_Manager:
|
||||
@staticmethod
|
||||
def get_by_file_id(file_id):
|
||||
try:
|
||||
#class Ngrams_Manager:
|
||||
#@staticmethod
|
||||
#def get_by_file_id(file_id):
|
||||
#try:
|
||||
# cur.execute(f'SELECT * from os2022_ngrams WHERE file_id = {file_id}')
|
||||
# cur.execute(f'SELECT COUNT(*) FROM os2022_ngrams')
|
||||
# return list(cur)
|
||||
return 1
|
||||
except Exception as e:
|
||||
print(e, 'EXC')
|
||||
return 0
|
||||
# return 1
|
||||
#except Exception as e:
|
||||
#print(e, 'EXC')
|
||||
#return 0
|
||||
|
||||
Reference in New Issue
Block a user