TrendFlow / widgets /body.py
Adapting's picture
init
9420338
raw
history blame
2.56 kB
import streamlit as st
from api_ import ArxivQuery, IEEEQuery, PaperWithCodeQuery
import random
def render_body(platforms, num_papers, num_papers_preview):
query_input = st.text_input('Enter your keyphrases', placeholder='''e.g. "Machine learning"''')
tmp = st.empty()
paperInGeneral = st.empty() # paper的大概
random_ids = random.sample([i for i in range(num_papers)],num_papers_preview)
if query_input != '':
with st.spinner('Searching...'):
tmp.markdown(f'You entered query: `{query_input}`')
paperInGeneral_md = '''# Query Results Preview
We have found following papers for you! (displaying 5 papers for each literature platforms)
'''
if 'IEEE' in platforms:
paperInGeneral_md += '''## IEEE
| ID| Paper Title | Publication Year |
| -------- | -------- | -------- |
'''
IEEEQuery.__setup_api_key__('vpd9yy325enruv27zj2d353e')
ieee = IEEEQuery.query(query_input)
for i in range(num_papers_preview):
id = random_ids[i]
title = str(ieee[id]['title']).replace('\n', ' ')
publication_year = str(ieee[id]['publication_year']).replace('\n', ' ')
paperInGeneral_md += f'''|{i + 1}|{title}|{publication_year}|\n'''
if 'Arxiv' in platforms:
paperInGeneral_md += '''
## Arxiv
| ID| Paper Title | Publication Year |
| -------- | -------- | -------- |
'''
arxiv = ArxivQuery.query(query_input, max_results=num_papers)
for i in range(num_papers_preview):
id = random_ids[i]
title = str(arxiv[id]['title']).replace('\n', ' ')
publication_year = str(arxiv[id]['published']).replace('\n', ' ')
paperInGeneral_md += f'''|{i + 1}|{title}|{publication_year}|\n'''
if 'PaperWithCode' in platforms:
paperInGeneral_md += '''
## Paper with Code
| ID| Paper Title | Publication Year |
| -------- | -------- | -------- |
'''
pwc = PaperWithCodeQuery.query(query_input, items_per_page=num_papers)
for i in range(num_papers_preview):
id = random_ids[i]
title = str(pwc[id]['title']).replace('\n', ' ')
publication_year = str(pwc[id]['published']).replace('\n', ' ')
paperInGeneral_md += f'''|{i + 1}|{title}|{publication_year}|\n'''
paperInGeneral.markdown(paperInGeneral_md)