Astro 2019 | ||
Astro 2021 | ||
astropy@a643a37a33 | ||
DSOs | ||
General | ||
Links | ||
Stars | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
LICENSE | ||
mkbinder.py | ||
packages.txt | ||
README.md | ||
requirements.txt |
Astronomy
Resources for Science Olympiad Astronomy. Note that due to the license, you must publicly release any code that you use from this repository.
Usage
Install dependencies
You can install all the required dependencies on Arch Linux with cat packages.txt | xargs sudo pacman -S --asdeps --noconfirm
. For other Linux distros, install your distro's version of the packages in packages.txt
.
Kiwix
Download all of Wikipedia, or if you are low on disk space, Wikipedia Astronomy.
Speedcrunch
Great for unit conversions: https://speedcrunch.org/userguide/advanced.html
Astropy
First, clone the submodule with git submodule init && git submodule update --remote
. Then build the documentation.
Download web pages
mkbinder.py
is a Python script to download web pages. It can detect if the latest version of a website is newer than the downloaded version and download only the web pages that need to be updated.
Navigate to the folder in your terminal and run pip install -r requirements.txt
to install dependencies.
Add links to download to text files in the Links
folder. The links in each text file will be downloaded to their own folder.
Now run python mkbinder.py
. It may take a while, depending on how many links to download.
Spam Ctrl-C in your terminal to quit the script while it's running.
You can change the backend used to download the websites, but the default backend pdfkit
tends to work the best and is recommended. There is an alternative backend weasyprint
which may work better in some cases and does not require wkhtmltopdf. Only change the backend if you are having trouble with the default and you know what you are doing!
usage: mkbinder.py [-h] [--backend {pdfkit,weasyprint}] [--force {False,True}]
optional arguments:
-h, --help show this help message and exit
--backend {pdfkit,weasyprint}, -b {pdfkit,weasyprint}
change the download backend; default: pdfkit
--force {False,True}, -f {False,True}
force download all links instead of only the ones that need to be updated; default: False