#python #rest
#Python #rest
Вопрос:
Я сталкиваюсь с проблемами с кодом, который я использую для этого проекта. Идея проекта заключается в программировании веб-службы REST по моему выбору с использованием Python. Однако мой IDLE утверждает, что я не могу импортировать модуль запросов. Я также пытался использовать Json, но, похоже, это тоже не работает, главным образом потому, что оба утверждают, что у них нет функции Get. Я никогда раньше не использовал ни один из этих модулей, поэтому я несколько растерялся, что делать. Вот рассматриваемый проект и мой код, а также сообщения об ошибках, которые он генерирует «
Инструкции по проекту
Напишите клиент для использования веб-службы REST по вашему выбору с использованием Python. Существует множество списков таких сервисов, но отличным ресурсом является ProgrammableWeb (https://www.programmableweb.com /). Ваша информация должна давать полезную информацию. Т.Е. дамп зашифрованных данных не является желаемым продуктом. Примерами могут быть прогноз погоды, котировки акций, стихи из Библии и т.д.,
Ваше решение должно предоставить пользователю вопрос, ответ на который вносит вклад в данные, используемые в вызове веб-службы REST. Например, прогноз погоды предложит пользователю ввести почтовый индекс или другую информацию о местоположении. После завершения веб-транзакции программа должна снова запросить тот же вопрос для завершения другой транзакции. Это должно продолжаться до тех пор, пока пользователь не введет указанное условие завершения.
Ваш вывод должен быть представлен в понятной форме. Дампы XML, JSON и т. Д. Являются некачественными и будут оцениваться соответствующим образом.
Подсказка: другой сайт с простым REST API можно найти здесь: http://labs.bible.org/api_web_service Обязательно нажмите на примеры и посмотрите на адресную строку вашего браузера. Это то, что вам нужно будет сгенерировать с помощью модуля запросов Python.
Вы можете использовать любой веб-сервис REST, который найдете, но я рекомендую этот, если вы ищете что-то простое. Одно предостережение, некоторые службы требуют, чтобы вы запрашивали доступ через ключ API. Утверждение может быть не немедленным, поэтому вы захотите найти что-то раньше, чем позже. Приведенный выше пример не требует одобрения.
Код
import json
URLWeb = "http://labs.bible.org/api/?passage="
print("Listen! To terminate the program, type 'exit'.")
while True:
print("-" * 30)
putIn = input("Heyo! To get some random facts, type 'random': ")
print("-" * 30)
if putIn.lower()== "random":
response = json.get(URLWeb "random")
properText = "-->".join(response.text[3:].split('</b>'))
print(properText)
elif "exit" == putIn.lower():
print("Ending program.")
break
else:
print("Hey, dude! Use proper input!"
Любые объяснения или помощь к завтрашнему вечеру будут оценены. Я пытался разобраться в своих проектах на Python, но, честно говоря, учитель не очень помог.
Комментарии:
1. Вы уверены, что это весь код? Особенно не отображаются импортные данные для json или запросов. Если вы импортируете стандартную библиотеку python , там действительно нет
get
функции.2. О, я забыл скопировать это. Это моя вина. Там есть Import Json, я просто забыл его получить. Я добавлю это. Это был просто недосмотр с моей стороны.
Ответ №1:
Сначала вам нужно установить requests
пакет с pip
помощью командной строки (Windows) или терминала (macOS / Linux).
pip install requests
Затем вы можете использовать get
функцию из requests
пакета:
response = requests.get(URLWeb "random")
Комментарии:
1. Относится ли это и к IDLE? Для этого я использую Pycharm.
2. IDLE не имеет ничего общего с python, выполняющим оператор import. Но если в вашей системе более одного python, вам необходимо установить пакеты для того же python, с которым вы запускаете IDLE. Существует множество ответов на вопросы, объясняющих детали.
3. На самом деле вы можете использовать ‘terminal’ в PyCharm для команды ‘pip install requests’. Это позволит загрузить и установить пакет.
4. Спасибо! Это сработало отлично! Жаль, что мне пришлось спросить незнакомого человека онлайн, потому что учитель ничего не сказал о том, как это сделать в наших чтениях. Он давал нам проекты, охватывающие темы, которые мы даже не касались в наших чтениях, так что, возможно, вы можете себе представить мое разочарование.
5. Пожалуйста. Да, это довольно важная информация, которую он тогда упустил 😉