Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@dvmn-tasks
dvmn-tasks / README.md
Last active April 14, 2021 19:57
Как отправить файл с помощью Requests

Этот сниппет кода основан на ответе к вопросу о загрузке файлов через Requests на сайте StackOverflow.

import requests

with open('image.jpg', 'rb') as file:
    url = '...'
    files = {
        'media': file,  # Вместо ключа "media" скорее всего нужно подставить другое название ключа. Какое конкретно см. в доке API ВК.
 }
@dvmn-tasks
dvmn-tasks / exception-bubbling.md
Last active November 2, 2023 16:20
Где перехватывать исключения

Исключения умеют всплывать

Исключения в Python — это особый объект, который умеет путешествовать между функциями и менять их поведение. Своим появлением исключение прерывает обычное исполнение программы — сверху вниз и вглубь — и переводит его в особый обратный режим — наверх до подходящего try except finally.

Для примера рассмотрим программу — информер с прогнозом погоды. Функция request_weather делает запрос к API сайта weather.com и возвращает прогноз погоды:

def request_weather():
    response = requests.get('https://weather.com/api/weather/moscow/')
    return response.json()
@dvmn-tasks
dvmn-tasks / script.py
Created July 17, 2019 18:31
Async code example
import asyncio
import itertools
import aionursery
PRELOADER_SYMBOLS = [
'|',
'/',
'—',
'\\',
]
@dvmn-tasks
dvmn-tasks / http_err_statuses.md
Last active November 28, 2018 09:16
Распрстранённые ошибки при работе с HTTP и пояснения к ним

HTTP статусы

Статус ответа приходит от сервера вместе с ответом. Например, вы наверняка уже знакомы с кодом 404 — он означает "Страница не найдена". Таких кодов очень много и стоит ориентироваться в них, чтобы не теряться и быстро находить ошибки.

Код ответа всегда состоит из трёх цифр. По первой цифре можно понять к какому классу относится статус. Если код начинаетсяс цифры:

  • 1 — информационный. Скорее всего с ним вы не столкнётесь ещё долго. Как пример приведём 101, «переключение протоколов».
  • 2 — успешный. Его рассматривать не нужно, всё ведь прошло хорошо. Ответ 200 так и расшифровывется: «хорошо».
  • 3 — перенаправление. Например, 308, «постоянное перенаправление» — запрашиваемый ресурс был окончательно перенесен на новый адрес.
  • 4 — ошиба клиента. Например, 404 — «страница не найдена». То есть клиент попросил у сервера страницу, которой нет. В такой ситуации ошибся явно клиент, а не сервер.
@dvmn-tasks
dvmn-tasks / language-salary-bonus.md
Last active November 16, 2018 16:43
Бонус-шаг к задаче «Прикидываем зарплату» курса https://dvmn.org

Улучшите инструмент, используя навыки, полученные в задаче. Для этого мы подготовили идеи, которые можно реализовать дополнительно, на ваше усмотрение. Похвастаться усовершенствованиями можно на собеседованиях или в нашей флудилке.

Отрисуйте данные на график

Просто числа на терминале не так наглядны, как график. Нарисуйте график зарплат с помощью API Plot.ly.

Советы

В примерах документации используется plotly.graph_objs.Scatter. Это диаграмма рассеяния. Вам понадобится столбцовая диаграмма. Используйте Bar вместо Scatter.

@dvmn-tasks
dvmn-tasks / packing.md
Last active June 21, 2022 18:02
Как упаковывать проекты

Статья переехала в энциклопедию

Если вы нашли ссылку на этот гист, пожалуйста, напишите @DoomAndGloom В Telegram.

Документация к методам API Bitly на русском

Добро пожаловать в русскую документацию API Bitly! Если вы хотите использовать Bitly для сокращения, маркировки и распространения ссылок, то вы в нужном месте. Эта статья написана не в целях перевода документации на русский, а для упрощения понимания документации Bitly разработчиками, т.к. страницы документации очень перегружены информацией и даже опытным веб-разработчикам тяжело в ней ориентироваться.

Документация является не полной, переведены только те методы API, которые авторам показались самыми необходимыми. Если вы хотите поучаствовать в переводе — мы всегда будем рады любой помощи.

Документация создана в рамках разработки курсов dvmn.org.

Оглавление

@dvmn-tasks
dvmn-tasks / github_desktop_linux.md
Last active December 29, 2023 12:09
Как установить клиент Github Desktop для Linux

Как установить клиент Github Desktop для Linux

По этой ссылке вы можете найти релизы Github Desktop для Linux. Чтобы скачать один из них, кликните по нужному названию (например, GitHubDesktop-linux-amd64-1.4.2-linux1.deb).

Если вы используете Ubuntu или Debian - вам нужен установщик с расширением .deb. Скачайте его, откройте и нажмите install в появившемся окошке. Готово, программа установлена.

Как запустить