Final version before tests

This commit is contained in:
2024-04-02 13:15:18 +02:00
parent 17b364524d
commit aa57a51057
2 changed files with 26 additions and 10 deletions
+14 -8
View File
@@ -1998,18 +1998,24 @@ class DoSearchView(discord.ui.View):
)
async def wyszukaj_linki_do_dokumentow(ctx):
query = ctx.message.content
query_uuid = uuid.uuid4()
#query_uuid = uuid.uuid4()
query_uuid = "test"
#3 wyslij Librariana
json_query = {"UUID" : str(query_uuid), "query" : str(query)[30:]}
#query_response = requests.post(f"{LIBRARIAN_SERVICE_ADDRESS}{SEND_QUERY}", json=json_query, timeout=360)
#logger.info(query_response.json())
#4 zwroc 5 wyników od librariana
json_query = {"UUID" : str(query_uuid), "query" : str(query)[30:], "page" : 1}
query_response = requests.post(f"{LIBRARIAN_SERVICE_ADDRESS}{SEND_QUERY}", json=json_query, timeout=360)
if not query_response.status_code == 200:
await ctx.send("Wołaj szefa - coś się wyjebało")
return
#4 zwroc 4 wyniki od librariana
#5 przyciski przy każdym wierszu pozwalają sprawdzić czy plik istnieje na scihubie - jeśli tak podaje link do sciagniecia
#6 ostatni wiersz to dalej, wróć, skasuj, zaciagnij kolejne wyniki (jeśli jest ich więcej niż 1000)
result_view = DoSearchView()
resulttab = ["r1", "r2", "r3", "r4"]
resulttab = []
resultlink = []
for item in query_response.json():
resulttab.append(item["title"])
item_link = f"https://scihub.se/{item["DOI"]}"
resultlink.append(item_link)
for i in range(1,5):
query = quote_plus(resulttab[i-1])
url = f'https://www.google.com/search?q={query}'
+12 -2
View File
@@ -1,6 +1,7 @@
import re
import logging
import threading
import time
from flask import Flask, jsonify, request
import netrc
import json
@@ -51,7 +52,6 @@ class Librarian(object):
container = "YES"
print(item['title'])
print(item['DOI'])
summarized_results.append({"DOI" : item['DOI'], "title": item['title'], "type": item['type'], "container": container})
result = {"UUID": uuid, "total_results": self.last_search['message']['total-results'], "on_page" : 1, "summary":summarized_results, "results":self.last_search['message']['items'], }
file_data.append(result)
@@ -89,6 +89,16 @@ class Librarian(object):
if self.check_if_exists(page_url):
return page_url
return None
def refine_query(self, unrefined_reqult):
refined_result = []
for item in unrefined_reqult["summary"]
if item["container"] == "NO":
item_link = f"https://scihub.se/{item["DOI"]}"
if self.check_if_exists(item_link):
refined_result.append(item)
print item_link
time.wait(0.2)
return refined_result
def answer_query(self, query, uuid):
#Search sql for UUID
@@ -111,7 +121,7 @@ class Librarian(object):
if uuid_found:
return self.last_search
self.search_crossref(query=query, uuid=uuid)
return self.last_search
return self.refine_query(self.last_search)
#example not exists
#sample_non_existing_page_url = "https://sci-hub.se/10.4324/9781003006237"