Хочешь уверенно проходить IT-интервью?
Мы понимаем, как сложно подготовиться: стресс, алгоритмы, вопросы, от которых голова идёт кругом. Но с AI тренажёром всё гораздо проще.
💡 Почему Т1 тренажёр — это мастхэв?
- Получишь настоящую обратную связь: где затык, что подтянуть и как стать лучше
- Научишься не только решать задачи, но и объяснять своё решение так, чтобы интервьюер сказал: "Вау!".
- Освоишь все этапы собеседования, от вопросов по алгоритмам до диалога о твоих целях.
Зачем листать миллион туториалов? Просто зайди в Т1 тренажёр, потренируйся и уверенно удиви интервьюеров. Мы не обещаем лёгкой прогулки, но обещаем, что будешь готов!
Реклама. ООО «Смарт Гико», ИНН 7743264341. Erid 2VtzqwP8vqy
Ключевые идеи статьи A Retrospective on Requests
У популярной библиотеки Requests немало недостатков:
- Переусложненный API с избыточными параметрами, плохо взаимодействующими друг с другом (например, проблемы с сочетанием json, files и headers).
- Внутренняя архитектура кода плохо структурирована – это сильно затрудняет поддержку.
- Обработка перенаправлений и повторных попыток (retry) реализована неудачно, с потерей информации об исключениях.
- Неудобная работа cookies из-за имитации словаря.
- Проблемы с поддержкой таймаутов из-за особенностей разрешения DNS.
- Ограниченные возможности настройки TLS и прокси-соединений.
- Механизм аутентификации не взаимодействует с логикой повторов запросов.
- Недостаточное покрытие тестами приводит к проблемам при нестандартном использовании.
- Сложность добавления новых функций из-за обратной несовместимости.
- Документация по использованию внутренних модулей библиотеки оставляет желать лучшего.
🐍 Библиотека питониста
Больше полезных материалов вы найдете на нашем телеграм-канале«Библиотека питониста»
🐍🎓 Библиотека собеса по Python
Подтянуть свои знания по Python вы можете на нашем телеграм-канале«Библиотека собеса по Python»
🐍🧩 Библиотека задач по Python
Интересные задачи по Python для практики можно найти на нашем телеграм-канале«Библиотека задач по Python»
Но нашелся герой, написавший новую библиотеку, свободную от этих и многих других недочетов – Niquest. Вот некоторые из преимуществ:
- Поддержка HTTP/2 по умолчанию, доступен HTTP/3. HTTP/2 и HTTP/3 обеспечивают более быстрое и эффективное взаимодействие с серверами. В отличие от других библиотек, которым требуется отдельная настройка для использования HTTP/2, Niquests включает его по умолчанию.
- Мультиплексированные соединения устраняют необходимость в асинхронном программировании. Niquests позволяет выполнять одновременные HTTP-запросы без необходимости переписывать код в асинхронном стиле (async/await). Это упрощает разработку и повышает производительность для синхронного кода.
- Повышенная безопасность. Niquests использует безопасные протоколы TLS 1.2 и выше, а также применяет рекомендуемые наборы шифров для защиты от изощренных атак.
- Проверка сертификатов OCSP. Клиент проверяет действительность сертификатов сервера с помощью OCSP (Online Certificate Status Protocol) – это обеспечивает дополнительный уровень безопасности.
- Зависимости с проверкой целостности. Niquests использует библиотеки с проверкой целостности с помощью SLSA (Supply chain Levels for Software Artifacts) – это гарантирует подлинность и неизменность зависимостей.
- Доверие системным корневым сертификатам. Клиент использует доверенные корневые сертификаты из хранилища вашей операционной системы, которое защищено и постоянно обновляется.
Дополнительные фичи:
- Производительность. Клиент может быть в 3 раза быстрее, чем другие библиотеки, при работе в синхронном режиме, особенно при использовании HTTP/2.
- Сертификаты в памяти. Позволяет загружать клиентские сертификаты mTLS и ключи без необходимости хранения их в файлах.
- Объектно-ориентированные заголовки. Предоставляет удобный доступ к заголовкам ответов с помощью объектно-ориентированного синтаксиса.
- Исправленные ошибки. Разработчики клиента устранили ряд известных ошибок, которые присутствовали в других Requests.
- Аннотации типов. Niquests использует аннотации для улучшения автодополнения и проверки кода в IDE.
***
Комментарии