1. Смотря какой функционал вы рассматриваете. Python вполне неплохо подходит для парсинга необходимой информации с сайтов (сам им пользуюсь). Использую всего навсего сам python и библиотеки BeautifulSoup, requests, selenium, pyautogui. Неплохо было бы разобраться с сист. контроля версий, pip и прочее.
2. Интернет в помощь. Стати на habr, Ютуб. Изучать лучше всего на практике, имея конкретные задачи.
3. Привел в первом пункте, но также для записи файлов .csv необходима доп. библиотека. Для начала хватит, а потом развиваться в путь давать волю фантазиям.
4. С каждым сайтом конечно нужно согласование на автоматический сбор данных иначе на Вас могут подать в суд.
Учитесь, учитесь и еще раз учитесь.
Можно код смотреть на github, там многие выкладывают)