Использование веб-служб с помощью Python

#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. Пожалуйста. Да, это довольно важная информация, которую он тогда упустил 😉