Song Chen's homepage
This is the latest version of my homepage's source code. Feel free to use and share.
The academic homepage consists of two parts:
- Academic Homepage used for the academic resume. -Personal Blog used as a Technical Memorandum.
You need to install Ruby and Jekyll fisrt.
Install and run:
bundle install
bundle exec jekyll server
View the live page using localhost
:
http://localhost:4000. You can get the html files in the _site
folder.
Details of publications should still be added manually including:
title
: title of the articleauthor
: authors of the articleconfernce_short
: abbreviation of the journalconference
: full name of the journalpdf
: address of the pdf file of the articlepage
bibtex
: used for the reference in the lateximage
: preview of the journal covercitation
: generated automatically based on the journal url in Googlescholarnotes
add remarks for the journal
The citations can be extracted from the JSON. file generated from the Github workflow. The python script used for the generation of JSON. file is shown as follows:
from scholarly import scholarly
import jsonpickle
import json
from datetime import datetime
import os
author: dict = scholarly.search_author_id('sf-0AGoAAAAJ&hl')
scholarly.fill(author, sections=['basics', 'indices', 'counts', 'publications'])
name = author['name']
author['updated'] = str(datetime.now())
author['publications'] = {v['author_pub_id']:v for v in author['publications']}
print(json.dumps(author, indent=2))
os.makedirs('results', exist_ok=True)
with open(f'results/gs_data.json', 'w') as outfile:
json.dump(author, outfile, ensure_ascii=False)
shieldio_data = {
"schemaVersion": 1,
"label": "citations",
"message": f"{author['citedby']}",
}
with open(f'results/gs_data_shieldsio.json', 'w') as outfile:
json.dump(shieldio_data, outfile, ensure_ascii=False)
- Configure the google scholar citation crawler:
- Find your google scholar ID in the url of your google scholar page (e.g., https://scholar.google.com/citations?user=SCHOLAR_ID), where
SCHOLAR_ID
is your google scholar ID. - Set GOOGLE_SCHOLAR_ID variable to your google scholar ID in
Settings -> Secrets -> Actions -> New repository secret
of the REPO website withname=GOOGLE_SCHOLAR_ID
andvalue=SCHOLAR_ID
. - Click the
Action
of the REPO website and enable the workflows by clicking "I understand my workflows, go ahead and enable them". This github action will generate google scholar citation stats datags_data.json
ingoogle-scholar-stats
branch of your REPO. When you update your main branch, this action will be triggered. This action will also be trigger 08:00 UTC everyday.
- Find your google scholar ID in the url of your google scholar page (e.g., https://scholar.google.com/citations?user=SCHOLAR_ID), where
The instructions for the Google Scholar crawler can be found in this repository.
-
Navigate to the _data/publications.yml file: Add the corresponding journal information
-
Based on the url given for the
citation
, the citation number can be shown.
To-DO list:
- Automating the gernation of the
publication.yml
file based on the Googlescholar profile.
This project uses the source code from the following repositories: