2024/2025




Сбор данных с Web-scraping и API для социально-научных исследований
Статус:
Маго-лего
Когда читается:
4 модуль
Охват аудитории:
для своего кампуса
Преподаватели:
Капустина Лика Владимировна
Язык:
русский
Кредиты:
3
Программа дисциплины
Аннотация
Курс знакомит студентов с технологией web-scraping и предполагает работу с основными библиотеками для сбора данных с html-страниц (BeautfiulSoup, Requests, Selenium), включает в себя работу с API, работу с динамическими страницами (включая работу с отдельными элементами страницы) посредством Selenium, работу с API и библиотеками для получения данных из социальных сетей и мессенджеров. Каждый блок занятий будет посвящен работе с определенным способом получения данных со страниц веб-сайтов, социальных сетей и мессенджеров. В начале студенты научатся обрабатывать данные .json, работать с html-разметкой страниц, вспомнят основы работы с библиотекой pandas. Далее, на каждом из занятий, студенты будут отрабатывать навыки сбора данных на примере открытого API ВКонтакте, библиотеки Pyrogram для сбора данных из Telegram, соберут открытые судебные данные с сайта Московского Городского Суда с помощью Selenium и отработают свои навыки на других источниках. Домашние задания по проекту предполагают продолжение работы на семинаре. Итоговый проект предполагает самостоятельно написанный студентом парсер с использованием requests, Selenium или сторонней библиотеки для сбора данных для сайта или социальной сети по выбору студента и дескриптивный анализ полученных данных.В результате освоения курса студенты познакомятся с языком html, освоят практические навыки web-scraping’а данных с html-страниц, работы с API социальных сетей и библиотек, написанных для получения данных из мессенджеров, напишут несколько работающих скраперов на языке программирования Python. Регулярная практика навыков web-scraping’а позволит им писать новые скрипты для сбора и предобработки данных из открытых источников и в будущем самостоятельно собирать данные для социально–научных и консалтинговых исследований.Курс рассчитан на студентов, успешно освоивших курс “Введение в программирование в Python”.
Цель освоения дисциплины
- В результате освоения курса студенты познакомятся с языком html, освоят практические навыки web-scraping’а данных с html-страниц, работы с API социальных сетей и библиотек, написанных для получения данных из мессенджеров, напишут несколько работающих скраперов на языке программирования Python. Регулярная практика навыков web-scraping’а позволит им писать новые скрипты для сбора и предобработки данных из открытых источников и в будущем самостоятельно собирать данные для социально–научных и консалтинговых исследований.
Планируемые результаты обучения
- Обладает навыками web-scraping
- Собирать данные с помощью web-scraping, парсить данные и сохранять их в табличном виде
- ● Студент владеет навыками работы с базовыми типами данных в Python; ● Студент владеет основами синтаксиса HTML, умеет работать с тегами и атрибутами; ● Студент владеет навыками работы с веб-страницами с помощью BeautifulSoup; ● Студент владеет навыками работы с браузером с помощью Selenium; ● Студент умеет отправлять запросы к API с помощью Python.
Содержание учебной дисциплины
- Введение в web-scraping. Основы html. requests, BeautifulSoup.
- Работа с API.
- Работа со сторонними библиотеками с Python.
- Управление браузером и работа с динамическими сайтами с помощью Selenium.
- Этика исследований, основанных на открытых данных.
Элементы контроля
- ПроектПроект представляет из себя полноценный проект, включающий в себя задумку исследования и текстовое описание, сбор и обработку данных на Python, решение поставленной аналитической задачи с помощью анализа данных.
- Домашнее заданиеТри домашних задания по каждому из блоков курса: основам веб-скрапинга с requests и BeautifulSoup, работе с API, работе с Selenium.
- ДокладЗаписанное видео на 10-12 минут с рассказом и демонстрацией применения одной из библиотек, ранее не упомянутых в курсе, но способных ускорить или облегчить процесс сбора и обработки веб-данных на Python. Выполняется по предварительной записи в таблице.
Список литературы
Рекомендуемая основная литература
- C#. Объектно-ориентированное программирование : учеб. курс, Васильев А.Н., 2012
- C#. Основы программирования : учебное пособие, Тюкачёв, Н. А., 2017
- C#. Программирование на языке высокого уровня, учебник, 432 с., Павловская, Т. А., 2007
- Ian Pouncey and Richard York - Beginning CSS : Cascading Style Sheets for Web Design - John Wiley & Sons, Incorporated, 2011-466 - Текст электронный - https://ebookcentral.proquest.com/lib/hselibrary-ebooks/detail.action?docID=693510
Рекомендуемая дополнительная литература
- Алгоритмы неформально : инструкция для начинающих питонистов, Такфилд, Б., 2023