mirror of
https://github.com/migatu/conjurer.git
synced 2026-07-19 16:22:10 +00:00
Final version before tests
This commit is contained in:
@@ -1998,18 +1998,24 @@ class DoSearchView(discord.ui.View):
|
|||||||
)
|
)
|
||||||
async def wyszukaj_linki_do_dokumentow(ctx):
|
async def wyszukaj_linki_do_dokumentow(ctx):
|
||||||
query = ctx.message.content
|
query = ctx.message.content
|
||||||
query_uuid = uuid.uuid4()
|
#query_uuid = uuid.uuid4()
|
||||||
|
query_uuid = "test"
|
||||||
#3 wyslij Librariana
|
#3 wyslij Librariana
|
||||||
json_query = {"UUID" : str(query_uuid), "query" : str(query)[30:]}
|
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)
|
query_response = requests.post(f"{LIBRARIAN_SERVICE_ADDRESS}{SEND_QUERY}", json=json_query, timeout=360)
|
||||||
#logger.info(query_response.json())
|
if not query_response.status_code == 200:
|
||||||
|
await ctx.send("Wołaj szefa - coś się wyjebało")
|
||||||
#4 zwroc 5 wyników od librariana
|
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
|
#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)
|
#6 ostatni wiersz to dalej, wróć, skasuj, zaciagnij kolejne wyniki (jeśli jest ich więcej niż 1000)
|
||||||
result_view = DoSearchView()
|
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):
|
for i in range(1,5):
|
||||||
query = quote_plus(resulttab[i-1])
|
query = quote_plus(resulttab[i-1])
|
||||||
url = f'https://www.google.com/search?q={query}'
|
url = f'https://www.google.com/search?q={query}'
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import re
|
import re
|
||||||
import logging
|
import logging
|
||||||
import threading
|
import threading
|
||||||
|
import time
|
||||||
from flask import Flask, jsonify, request
|
from flask import Flask, jsonify, request
|
||||||
import netrc
|
import netrc
|
||||||
import json
|
import json
|
||||||
@@ -51,7 +52,6 @@ class Librarian(object):
|
|||||||
container = "YES"
|
container = "YES"
|
||||||
print(item['title'])
|
print(item['title'])
|
||||||
print(item['DOI'])
|
print(item['DOI'])
|
||||||
|
|
||||||
summarized_results.append({"DOI" : item['DOI'], "title": item['title'], "type": item['type'], "container": container})
|
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'], }
|
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)
|
file_data.append(result)
|
||||||
@@ -89,6 +89,16 @@ class Librarian(object):
|
|||||||
if self.check_if_exists(page_url):
|
if self.check_if_exists(page_url):
|
||||||
return page_url
|
return page_url
|
||||||
return None
|
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):
|
def answer_query(self, query, uuid):
|
||||||
#Search sql for UUID
|
#Search sql for UUID
|
||||||
@@ -111,7 +121,7 @@ class Librarian(object):
|
|||||||
if uuid_found:
|
if uuid_found:
|
||||||
return self.last_search
|
return self.last_search
|
||||||
self.search_crossref(query=query, uuid=uuid)
|
self.search_crossref(query=query, uuid=uuid)
|
||||||
return self.last_search
|
return self.refine_query(self.last_search)
|
||||||
|
|
||||||
#example not exists
|
#example not exists
|
||||||
#sample_non_existing_page_url = "https://sci-hub.se/10.4324/9781003006237"
|
#sample_non_existing_page_url = "https://sci-hub.se/10.4324/9781003006237"
|
||||||
|
|||||||
Reference in New Issue
Block a user