Что необходимо знать, чтобы парсить сайты?
Действительно... Если хочешь парсить на JS - учи JS :). Не лишним будет освоить Node.js, вот под неё то уже есть готовые библиотеки для парсинга сайтов :)
https://tproger.ru/translations/web-scraping-node-js/
https://slimerjs.org
Хочешь парсить - почитай про парсеры, про теорию компиляторов, про формальные грамматики, посмотри примеры других парсеров