more links to originals in inspirations

This commit is contained in:
Trilarion
2020-09-05 10:53:44 +02:00
parent b1fc6617f8
commit 469f9fa690
7 changed files with 71 additions and 30 deletions

View File

@ -4,9 +4,10 @@ Maintenance of inspirations.md and synchronization with the inspirations in the
import time
from utils import constants as c, utils, osg, osg_ui
from utils import osg_wikipedia
def duplicate_check():
def check_for_duplicates():
"""
:param inspirations:
@ -16,23 +17,10 @@ def duplicate_check():
inspiration_names = [x['name'] for x in inspirations]
for index, name in enumerate(inspiration_names):
for other_name in inspiration_names[index+1:]:
if osg.name_similarity(name, other_name) > similarity_threshold:
if osg.name_similarity(name, other_name) > 0.8:
print(' {} - {} is similar'.format(name, other_name))
if __name__ == "__main__":
similarity_threshold = 0.8
# load inspirations
inspirations = osg.read_inspirations_info()
print('{} inspirations in the inspirations database'.format(len(inspirations)))
osg.write_inspirations_info(inspirations) # write again just to check integrity
#osg_ui.run_simple_button_app('Maintenance inspirations', (('Duplicate check', duplicate_check),))
def test():
# assemble info
t0 = time.process_time()
entries = osg.read_entries()
@ -75,4 +63,32 @@ if __name__ == "__main__":
print('potential removed inspiration {} from games {}'.format(name, inspirations[index]['inspired entries']))
similar_names = [x for x in entries_inspirations.keys() if osg.name_similarity(name, x) > 0.8]
if similar_names:
print(' similar names {}'.format(', '.join(similar_names)))
print(' similar names {}'.format(', '.join(similar_names)))
def read_inspirations():
inspirations = osg.read_inspirations_info()
print('{} inspirations in the inspirations database'.format(len(inspirations)))
def write_inspirations():
osg.write_inspirations_info(inspirations)
print('inspirations written')
if __name__ == "__main__":
inspirations = osg.read_inspirations_info()
osg.write_inspirations_info(inspirations)
inspirations = None
entries = None
actions = {
'Read inspirations': read_inspirations,
'Write inspirations': write_inspirations,
'Check for duplicates': check_for_duplicates,
}
osg_ui.run_simple_button_app('Maintenance inspirations', actions)

View File

@ -1,3 +1,5 @@
pygithub
lark-parser
BeautifulSoup
BeautifulSoup
PyQt5
wikipedia

View File

@ -18,14 +18,15 @@ def run_simple_button_app(title, actions):
# create single widget
widget = QtWidgets.QWidget()
widget.setWindowTitle(title)
widget.setMinimumSize(200, 400)
widget.setMinimumSize(200, 200)
# add actions
layout = QtWidgets.QVBoxLayout(widget)
for name, action in actions:
for name, action in actions.items():
button = QtWidgets.QPushButton(name)
button.clicked.connect(action)
layout.addWidget(button)
layout.addStretch()
# execute app
widget.show()