• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site
2024/2025

Data Collection from Web-scraping and API for Social Scientific Research

Category 'Best Course for Career Development'
Category 'Best Course for Broadening Horizons and Diversity of Knowledge and Skills'
Category 'Best Course for New Knowledge and Skills'
Type: Mago-Lego
When: 4 module
Open to: students of one campus
Instructors: Lika Kapustina
Language: English
ECTS credits: 3

Course Syllabus

Abstract

Главная цель курса – научить студентов автоматизированно собирать данные для социально-научных исследований и прикладных проектов с использованием языка программирования Python. Курс состоит из трех блоков: парсинг html и веб-страниц простых веб-сайтов с помощью beautifulsoup и requests, автоматизированный сбор данных через API, работа с динамическими страницами веб-сайтов с помощью Selenium. На каждом из занятий студенты параллельно с преподавателем и также в рамках самостоятельного решения задач практикуют навыки автоматизированного сбора данных на Python на примере реально существующих сайтов или API. Кроме задач во время семинара, студенты также могут дополнительно потренироваться с помощью задач, выложенных в SmartLMS. Курс включает несколько элементов оценивания: домашние задания, проверочные работы на занятиях, финальный проект. Домашние задания предполагают реализацию небольшого пошагового проекта по сбору данных. Проверочные работы представляют из себя самостоятельное решение нескольких задач в SmartLMS по ранее пройденным темам и выполняются самостоятельно в аудитории. Финальный проект предполагает подготовку полноценного проекта по сбору данных с использованием библиотеки Selenium. В течение курса студентам также будет предложено решить несколько бонусных домашних заданий на дополнительный балл. В результате освоения курса студенты познакомятся с языком разметки HTML, освоят практические навыки web-scraping’а данных с html-страниц, работы с API социальных сетей и других сайтов, напишут несколько работающих скраперов на языке программирования Python. Регулярная практика навыков автоматизированного сбора данных позволит им писать новые скрипты для сбора и предобработки данных из открытых источников и в будущем самостоятельно собирать данные для социально–научных исследований и прикладных проектов. Этот курс рассчитан на студентов, успешно освоивших курс “Введение в программирование в Python”.
Learning Objectives

Learning Objectives

  • В результате освоения курса студенты познакомятся с языком разметки HTML, освоят практические навыки web-scraping’а данных с html-страниц, работы с API социальных сетей и других сайтов, напишут несколько работающих скраперов на языке программирования Python. Регулярная практика навыков автоматизированного сбора данных позволит им писать новые скрипты для сбора и предобработки данных из открытых источников и в будущем самостоятельно собирать данные для социально–научных исследований и прикладных проектов.
Expected Learning Outcomes

Expected Learning Outcomes

  • Обладает навыками web-scraping
  • Собирать данные с помощью web-scraping, парсить данные и сохранять их в табличном виде
  • ● Студент владеет навыками работы с базовыми типами данных в Python; ● Студент владеет основами синтаксиса HTML, умеет работать с тегами и атрибутами; ● Студент владеет навыками работы с веб-страницами с помощью BeautifulSoup; ● Студент владеет навыками работы с браузером с помощью Selenium; ● Студент умеет отправлять запросы к API с помощью Python.
Course Contents

Course Contents

  • Введение в web-scraping. Основы html. requests, BeautifulSoup.
  • Работа с API.
  • Работа со сторонними библиотеками с Python.
  • Управление браузером и работа с динамическими сайтами с помощью Selenium.
  • Этика исследований, основанных на открытых данных.
Assessment Elements

Assessment Elements

  • non-blocking Проект
    Проект представляет из себя полноценный проект, включающий в себя задумку исследования и текстовое описание, сбор и обработку данных на Python, решение поставленной аналитической задачи с помощью анализа данных.
  • non-blocking Домашнее задание
    Три домашних задания по каждому из блоков курса: основам веб-скрапинга с requests и BeautifulSoup, работе с API, работе с Selenium.
  • non-blocking Доклад
    Записанное видео на 10-12 минут с рассказом и демонстрацией применения одной из библиотек, ранее не упомянутых в курсе, но способных ускорить или облегчить процесс сбора и обработки веб-данных на Python. Выполняется по предварительной записи в таблице.
Interim Assessment

Interim Assessment

  • 2024/2025 4th module
    0.15 * Доклад + 0.45 * Домашнее задание + 0.4 * Проект
Bibliography

Bibliography

Recommended Core Bibliography

  • 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
  • Mislove, A., & Wilson, C. A Practitioner’s Guide to Ethical Web Data Collection. In (Ed.), The Oxford Handbook of Networked Communication. : Oxford University Press,. http://www.oxfordhandbooks.com/view/10.1093/oxfordhb/9780190460518.001.0001/oxfordhb-9780190460518-e-27.– ЭБС: Oxford Handbooks Online
  • Тестирование веб-API, Винтерингем, М., 2024

Recommended Additional Bibliography

  • Алгоритмы неформально : инструкция для начинающих питонистов, Такфилд, Б., 2023

Authors

  • Bogachev MAKSIM IGOREVICH
  • Pavlova Irina Anatolevna