Spaces:
Runtime error
Runtime error
File size: 3,906 Bytes
701f8ff 6437e07 701f8ff 000490a 701f8ff 1932762 701f8ff |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
import streamlit as st
import pandas as pd
# import gdown
import os
import pickle
from streamlit import session_state as _state
from PyDictionary import PyDictionary
dictionary=PyDictionary()
st.set_page_config(layout="wide", page_title="ACl23 Secret Language")
from streamlit.components.v1 import html
def nav_page(page_name, timeout_secs=3):
nav_script = """
<script type="text/javascript">
function attempt_nav_page(page_name, start_time, timeout_secs) {
var links = window.parent.document.getElementsByTagName("a");
for (var i = 0; i < links.length; i++) {
if (links[i].href.toLowerCase().endsWith("/" + page_name.toLowerCase())) {
links[i].click();
return;
}
}
var elasped = new Date() - start_time;
if (elasped < timeout_secs * 1000) {
setTimeout(attempt_nav_page, 100, page_name, start_time, timeout_secs);
} else {
alert("Unable to navigate to page '" + page_name + "' after " + timeout_secs + " second(s).");
}
}
window.addEventListener("load", function() {
attempt_nav_page("%s", new Date(), %d);
});
</script>
""" % (page_name, timeout_secs)
html(nav_script)
if st.button("< Prev"):
nav_page("π_Dictionary_(Search)")
# st.title("ACl23 Secret Language")
# sidebar
st.sidebar.header("π Dictionary (Browse)")
# title = st.sidebar.text_input(":red[Search secret languages given the following word]", 'Asian')
buttons = {}
# def call_back():
# for k in buttons:
# if buttons[k]:
# st.text(k)
with st.sidebar:
st.markdown(f'<a href="Dictionary_Search" target="_self">gogogo</a>', unsafe_allow_html=True)
cols0 = st.columns(8)
for i in range(len(cols0)):
with cols0[i]:
buttons[chr(65 + i)] = st.button(chr(65 + i))
cols1 = st.columns(8)
for i in range(len(cols1)):
with cols1[i]:
buttons[chr(65 + 8 + i)] = st.button(chr(65 + 8 + i))
cols2 = st.columns(8)
for i in range(len(cols2)):
with cols2[i]:
buttons[chr(65 + 16 + i)] = st.button(chr(65 + 16 + i))
cols3 = st.columns(8)
for i in range(2):
with cols3[i]:
buttons[chr(65 + 24 + i)] = st.button(chr(65 + 24 + i))
cols4 = st.columns(2)
buttons['0-9'] = cols4[0].button('0-9')
buttons['Others'] = cols4[1].button('Others')
# all_condition = False
for k in buttons:
if buttons[k]:
if k == '0-9':
st.title(k)
file_names = ['num_dict.pkl']
elif k == 'Others':
st.title(k)
file_names = ['other_dict.pkl']
elif ord(k[0]) in list(range(97, 123)) + list(range(65, 91)):
st.title(chr(ord(k)))
file_names = [f'{ord(k[0]) + 32}_dict.pkl', f'{ord(k[0])}_dict.pkl']
all_data = {}
all_key = []
for file_name in file_names:
_data = pickle.load(open(f'all_secret_langauge_by_fist/{file_name}', 'rb'))
all_data.update(_data)
all_key.extend(sorted(list(_data.keys())))
# st.markdown(file_name, unsafe_allow_html=True)
# st.markdown(_data.keys(), unsafe_allow_html=True)
all_key = list(set(all_key))
for key in all_key:
# if len(key) and key[0] != '"':
# st.markdown(key, unsafe_allow_html=True)
# st.change_page("home")
st.markdown(f'<a href="Dictionary_(Search)?word={key}" target="_self">{key}</a>', unsafe_allow_html=True)
# with st.expander(key):
# st.markdown(':red[Secret Languages:' + ','.join(all_data[key]['secret languages']), unsafe_allow_html=True)
|