Методы сбора и обработки данных при помощи Python. Веб запросы, работа с API, парсинг. Урок 2 презентация

Содержание

Слайд 2

План урока 1) Немножко про ДЗ 2) Библиотека requests 3)

План урока

1) Немножко про ДЗ
2) Библиотека requests
3) Запросы к API Aviasales,

парсинг JSON в python
4) Регулярные выражения — краткий экскурс
5) Парсинг статей Википедии, подсчет слов


Слайд 3

Библиотека requests https://2.python-requests.org/en/master/ - документация

Библиотека requests

https://2.python-requests.org/en/master/ - документация


Слайд 4

Запросы >>> r = requests.get('https://api.github.com/events') >>> r = requests.post('https://httpbin.org/post', data

Запросы

>>> r = requests.get('https://api.github.com/events')
>>> r = requests.post('https://httpbin.org/post', data = {'key':'value'})
>>> r

= requests.put('https://httpbin.org/put', data = {'key':'value'})
>>> r = requests.delete('https://httpbin.org/delete')
>>> r = requests.head('https://httpbin.org/get')
>>> r = requests.options('https://httpbin.org/get')


Слайд 5

GET >>> payload = {'key1': 'value1', 'key2': 'value2'} >>> r

GET


>>> payload = {'key1': 'value1', 'key2': 'value2'}
>>> r = requests.get('https://httpbin.org/get',

params=payload)
URL = https://httpbin.org/get?key1=value1&key2=value2
>>> payload = {'key1': 'value1', 'key2': ['value2', 'value3']}
>>> r = requests.get('https://httpbin.org/get', params=payload)
URL = https://httpbin.org/getkey1=value1&key2=value2&key2=value3
Слайд 6

POST >>> payload = {'key1': 'value1', 'key2': 'value2'} >>> r

POST


>>> payload = {'key1': 'value1', 'key2': 'value2'}
>>> r = requests.post("https://httpbin.org/post",

data=payload)
>>> payload_tuples = [('key1', 'value1'), ('key1', 'value2')]
>>> r1 = requests.post('https://httpbin.org/post', data=payload_tuples)
>>> payload_dict = {'key1': ['value1', 'value2']}
>>> r2 = requests.post('https://httpbin.org/post', data=payload_dict)
Слайд 7

Обработка ответа >>> r = requests.get('https://api.github.com/events') >>> r.text u'[{"repository":{"open_issues":0,"url":"https://github.com/… >>>

Обработка ответа


>>> r = requests.get('https://api.github.com/events')
>>> r.text
u'[{"repository":{"open_issues":0,"url":"https://github.com/…
>>> r.content
b'[{"repository":{"open_issues":0,"url":"https://github.com/…
>>> from PIL import

Image
>>> from io import BytesIO
>>> i = Image.open(BytesIO(r.content))
Слайд 8

Обработка ответа >>> r = requests.get('https://api.github.com/events') >>> r.json() [{u'repository': {u'open_issues': 0, u'url': 'https://github.com/...

Обработка ответа


>>> r = requests.get('https://api.github.com/events')
>>> r.json()
[{u'repository': {u'open_issues': 0, u'url': 'https://github.com/...

Слайд 9


Слайд 10

Регулярные выражения https://habr.com/ru/post/66931/ - простые примеры

Регулярные выражения


https://habr.com/ru/post/66931/ - простые примеры

Слайд 11

Регулярные выражения

Регулярные выражения


Слайд 12

Домашнее задание 1) Доработать приложение по поиску авиабилетов, чтобы оно

Домашнее задание


1) Доработать приложение по поиску авиабилетов, чтобы оно возвращало

билеты по названию города, а не по IATA коду. (У aviasales есть для этого дополнительное API) Пункт отправления и пункт назначения должны передаваться в качестве параметров. Сделать форматированный вывод, который содержит в себе пункт отправления, пункт назначения, дату вылета, цену билета (можно добавить еще другие параметры по желанию)
2) В приложении парсинга википедии получить первую ссылку на другую страницу и вывести все значимые слова из неё. Результат записать в файл в форматированном виде
2.* Научить приложение определять количество ссылок в статье. Спарсить каждую ссылку и результаты записать в отдельные файлы.
Имя файла: Методы-сбора-и-обработки-данных-при-помощи-Python.-Веб-запросы,-работа-с-API,-парсинг.-Урок-2.pptx
Количество просмотров: 61
Количество скачиваний: 0