Web-scraping: сбор данных из баз данных и интернет-источников: различия между версиями
(не показано 12 промежуточных версий этого же участника) | |||
Строка 70: | Строка 70: | ||
* [https://www.dropbox.com/s/mg04qo4w7w110fk/03-03-class06.mp4?dl=0 Видеозапись] занятия. | * [https://www.dropbox.com/s/mg04qo4w7w110fk/03-03-class06.mp4?dl=0 Видеозапись] занятия. | ||
− | * Исключения ([читать], [скачать]). BeautifulSoup и pandas ( | + | * Исключения ([https://nbviewer.org/github/allatambov/allatambov.github.io/blob/master/web-scrape/try-except.ipynb читать], [https://allatambov.github.io/web-scrape/try-except.ipynb скачать]). BeautifulSoup и pandas (читать, скачать). |
− | * | + | * Установка драйверов для Selenium: для [https://chromedriver.chromium.org/downloads Chrome], для [https://github.com/mozilla/geckodriver/releases/ Firefox], [https://allatambov.github.io/icef/instr-wb.pdf решение] проблем на Mac. |
'''Дополнительно''' | '''Дополнительно''' | ||
Строка 78: | Строка 78: | ||
===10 марта. Управление браузером с библиотекой Selenium=== | ===10 марта. Управление браузером с библиотекой Selenium=== | ||
+ | |||
+ | * [https://www.dropbox.com/s/citm0818h0rgyi9/10-03-class07.mp4?dl=0 Видеозапись] занятия. | ||
+ | * Управление браузером Selenium + BeautifulSoup ([https://nbviewer.org/github/allatambov/allatambov.github.io/blob/master/web-scrape/selenium-bg.ipynb смотреть], [https://allatambov.github.io/web-scrape/selenium-bg.ipynb скачать]). | ||
+ | * Selenium и работа с ВКонтакте ([https://gist.github.com/allatambov/3ac71ed0b14106080107950676dee42c код], полный конспект вместе со второй частью ниже). | ||
+ | |||
+ | '''Дополнительно''' | ||
+ | |||
+ | * Немного про lambda-функции: [https://nbviewer.jupyter.org/github/allatambov/PyDat-0919/blob/master/lectures-seminars/5-files/lambda-functions.ipynb конспект]. | ||
+ | |||
+ | ===17 марта. Управление браузером с библиотекой Selenium. Введение в API === | ||
+ | |||
+ | * [https://www.dropbox.com/s/q43ezbl2tbkvwl7/17-03-class08.mp4?dl=0 Видеозапись] занятия. | ||
+ | * Управление браузером с помощью Selenium: пример ВКонтакте ([https://nbviewer.org/github/allatambov/allatambov.github.io/blob/master/web-scrape/selenium-vk.ipynb смотреть], [https://allatambov.github.io/web-scrape/selenium-vk.ipynb скачать]). | ||
+ | * Получение доступа к API ВКонтакте: [https://allatambov.github.io/pypolit/vk-auth.pdf инструкция]. | ||
+ | |||
+ | ===24 марта. Работа с API ВКонтакте === | ||
+ | |||
+ | * [https://www.dropbox.com/s/z7vvll1f9j9e2aj/24-03-class09.mp4?dl=0 Видеозапись] занятия. | ||
+ | * [https://dev.vk.com/reference Документация] API ВКонтакте. | ||
+ | * Работа с API ВКонтакте: собираем посты со стены ([https://nbviewer.org/github/allatambov/allatambov.github.io/blob/master/web-scrape/vk-api-wall-upd.ipynb смотреть], [https://allatambov.github.io/web-scrape/vk-api-wall-upd.ipynb скачать]). | ||
+ | * Работа с API ВКонтакте: собираем информацию о друзьях ([https://nbviewer.org/github/allatambov/allatambov.github.io/blob/master/web-scrape/vk-api-friends-upd.ipynb смотреть], [https://allatambov.github.io/web-scrape/vk-api-friends-upd.ipynb скачать]). | ||
+ | |||
+ | '''Дополнительно:''' | ||
+ | |||
+ | * Про создание чат-ботов ВКонтакте: [https://habr.com/ru/post/428507/ ссылка]. Минимальный пример очень интровертного чат-бота: [конспект]. | ||
==Домашние задания== | ==Домашние задания== | ||
Строка 89: | Строка 114: | ||
| Домашнее задание 2 || 04.03 23:59 || [https://nbviewer.org/github/allatambov/allatambov.github.io/blob/master/web-scrape/psy-hw02.ipynb смотреть] [https://allatambov.github.io/web-scrape/psy-hw02.ipynb скачать] | | Домашнее задание 2 || 04.03 23:59 || [https://nbviewer.org/github/allatambov/allatambov.github.io/blob/master/web-scrape/psy-hw02.ipynb смотреть] [https://allatambov.github.io/web-scrape/psy-hw02.ipynb скачать] | ||
|- | |- | ||
− | | Домашнее задание 3 || | + | | Домашнее задание 3 || 30.03 23:59|| [https://nbviewer.org/github/allatambov/allatambov.github.io/blob/master/web-scrape/psy-hw03.ipynb смотреть] [https://allatambov.github.io/web-scrape/psy-hw03.ipynb скачать] |
|} | |} |
Версия 16:30, 24 марта 2022
Это страница обязательного курса «Web-scraping: сбор данных из баз данных и интернет-источников», читаемого на программе «Психология» 4 курса бакалавриата в 2021/2022 учебном году.
Преподаватель: Тамбовцева Алла Андреевна.
Содержание
- 1 Правила игры
- 2 Среда для работы
- 3 Материалы
- 3.1 27 января. Введение в web-scraping. Язык HTML и его особенности
- 3.2 3 февраля. Структуры данных в Python: списки, кортежи, словари
- 3.3 10 февраля. Парсинг HTML с библиотекой BeautifulSoup: часть 1
- 3.4 17 февраля. Парсинг HTML с библиотекой BeautifulSoup: часть 2
- 3.5 24 февраля. Работа с текстами: облака слов и первичная обработка текста
- 3.6 3 марта. Исключения. BeautifulSoup и pandas. Введение в Selenium
- 3.7 10 марта. Управление браузером с библиотекой Selenium
- 3.8 17 марта. Управление браузером с библиотекой Selenium. Введение в API
- 3.9 24 марта. Работа с API ВКонтакте
- 4 Домашние задания
Правила игры
- Формула оценки: 0.6 × ДЗ + 0.4 × Экзамен.
- Домашние задания, сданные после срока, оцениваются с использованием понижающих коэффициентов: опоздание в пределах часа – штраф 10% от полученной оценки, в пределах суток – штраф 30%, в пределах недели – штраф 70%. Домашние задания, сданные через неделю после указанного срока и позже, не принимаются и не оцениваются.
- Программа курса.
Среда для работы
На данном курсе мы используем язык Python версии не ниже 3.5 и среду Jupyter Notebook. Скачать дистрибутив Anaconda, который установит интерпретатор Python, среду Jupyter Notebook и основные библиотеки для работы с данными, можно здесь. Если вы никогда не работали в Jupyter Notebook, предлагаем посмотреть небольшое видео и почитать инструкцию.
Если вы имеете мало опыта работы с Python, рекомендуем обратиться к следующим курсам на DataCamp (бесплатный доступ предоставлен всем слушателям этого курса): Introduction to Python, Python Data Science Toolbox (Part 1) и Python Data Science Toolbox (Part 2).
Материалы
27 января. Введение в web-scraping. Язык HTML и его особенности
- Видеозапись занятия.
- Язык HTML и его особенности: слайды, файл на codepen.
Дополнительно
3 февраля. Структуры данных в Python: списки, кортежи, словари
- Видеозапись занятия.
- Работа со строками (читать, скачать).
- Необходимые для веб-скреппинга сведения об объектах и конструкциях в Python (читать, скачать).
- Семинар 1 (читать, скачать), решения семинара (читать, скачать).
Дополнительно
- Списки и цикл for (читать, скачать), методы на списках (читать, скачать).
- Условные конструкции (читать, скачать).
- Кортежи (читать, скачать), словари (читать, скачать).
- Pythontutor: уроки и задачи.
10 февраля. Парсинг HTML с библиотекой BeautifulSoup: часть 1
- Видеозапись занятия.
- Семинар 2. Практикум по парсингу (читать, скачать).
Дополнительно
- Документация BeautifulSoup.
17 февраля. Парсинг HTML с библиотекой BeautifulSoup: часть 2
- Видеозапись занятия.
- Немного про функции и датафреймы pandas (читать, скачать).
- Семинар 3. Практикум по парсингу (читать, скачать).
Дополнительно
24 февраля. Работа с текстами: облака слов и первичная обработка текста
- Видеозапись занятия.
- Работа с текстами и облака слов (файл), данные по новостям (nplus1.xlsx).
- Облака слов с библиотекой wordcloud: тьюториал.
- Список стоп-слов для русского языка, библиотека pymorphy2.
3 марта. Исключения. BeautifulSoup и pandas. Введение в Selenium
- Видеозапись занятия.
- Исключения (читать, скачать). BeautifulSoup и pandas (читать, скачать).
- Установка драйверов для Selenium: для Chrome, для Firefox, решение проблем на Mac.
Дополнительно
- Документация Selenium.
10 марта. Управление браузером с библиотекой Selenium
- Видеозапись занятия.
- Управление браузером Selenium + BeautifulSoup (смотреть, скачать).
- Selenium и работа с ВКонтакте (код, полный конспект вместе со второй частью ниже).
Дополнительно
- Немного про lambda-функции: конспект.
17 марта. Управление браузером с библиотекой Selenium. Введение в API
- Видеозапись занятия.
- Управление браузером с помощью Selenium: пример ВКонтакте (смотреть, скачать).
- Получение доступа к API ВКонтакте: инструкция.
24 марта. Работа с API ВКонтакте
- Видеозапись занятия.
- Документация API ВКонтакте.
- Работа с API ВКонтакте: собираем посты со стены (смотреть, скачать).
- Работа с API ВКонтакте: собираем информацию о друзьях (смотреть, скачать).
Дополнительно:
- Про создание чат-ботов ВКонтакте: ссылка. Минимальный пример очень интровертного чат-бота: [конспект].
Домашние задания
Задание | Дедлайн | Файл с заданием |
---|---|---|
Домашнее задание 1 | 18.02 23:59 | смотреть скачать |
Домашнее задание 2 | 04.03 23:59 | смотреть скачать |
Домашнее задание 3 | 30.03 23:59 | смотреть скачать |