CSIS 354 Liberty University Consuming a Web Service with Python Computer Coding Task

User Generated

qw123

Computer Science

CSIS 354

Liberty University

CSIS

Description

Unformatted Attachment Preview

CSIS 354 Web Serice Rev. C CONSUMING A WEB SERVICE WITH PYTHON Consuming data from programmable web based API’s is growing rapidly. According to ProgrammableWeb, in just six years (2010-2016), web API counts increased 758 percent with the majority being REST based. This is driven by a myriad of factors but growth of cloud based applications, (distributed computing by another name), and the resulting need to integrate the different categories is a major factor. Description Write a client to consume a REST web service of you choice using Python. There are many listings of such services but an excellent resource is ProgrammableWeb (https://www.programmableweb.com/). Your information should produce useful information. I.e. a dump of cryptic data is not the desired product. Examples could be a weather forecast, stock quote, Bible verse, etc., Your solution should present the user with a question with the answer contributing to the data used in the REST web service call. For example, a weather forecast would prompt the user to enter a zip code or other location information. Once the web transaction is complete, the program should prompt again with the same question to complete another transaction. This should continue until the user enters a specified termination condition. You output must be presented in an understandable manner. Dumps of XML, JSON, etc., are substandard and will be graded accordingly. Hint: Another site with a simple REST API can be found here: http://labs.bible.org/api_web_service Be sure to click on the examples and look at the address bar of your browser. That is what you will need to generate with the Python requests module. You are free to use any REST web service you find but I recommend this one if you are looking for something straightforward. One word of caution, some services require you to request access via an API key. The approval may not be immediate so you will want to find something sooner rather than later. The example I listed above requires no approval. Test your code completely. At each step of the test take a screen shot and embed it into a Word document. At the completion of the test compress (ZIP) the Word document and your code into one ZIP file. Submit the ZIP file to the appropriate assignment. Submit your Python source code and any other relevant material by 11:59 p.m. (ET) on Monday of Module/Week 8. Page 1 of 1 Consuming A Web Service with Python Grading Rubric Criteria Locating and connecting to a public REST web service User is prompted for data which contributes to the web service query Executing method call on API Returning response from API endpoint to standard output (terminal) Documentation – source code is well documented Levels of Achievement Advanced Proficient Developing Not present 9 to 10 points Successfully connects to a valid web service API. Handles errors such as connection, authentication, etc., gracefully. 9 to 10 points User is prompted with a clear request which is repeated for subsequent queries until an end condition is entered. 9 to 10 points Correctly issues a request to the API endpoint. Any errors are echoed to standard out at the client. 14 to 15 points Output from the web service is received and processed such that the data is formatted in a clear manner to the end user. 5 points Functions, variables, code blocks, etc., are well documented. Variable names follow industry convention. Improper call syntax results in a usage message back to the user. 7 to 8 points Located a public web service API and successfully connected to it. 1 to 6 points Located a public web service API but was unsuccessful in connecting to it. 0 points 7 to 8 points User is prompted once and then program terminates once response is displayed 1 to 6 points User is queried but data obtained is not used or only partially used in query. 0 points User is not prompted to enter data. 7 to 8 points Issues request to API endpoint but no accommodation for error handling. 1 to 6 points Issues request to API with some errors encountered. 0 points 11 to 13 points Output is received but presentation to end user on terminal lacks clarity and/or completeness. 1 to 10 points Attempt made to process response with partial success. 4 points Modest but correct comments, generally consistent and correct in variable/function naming 1 to 3 points Inaccurate and sparse comments. Naming conventions generally inconsistent. Nothing located and nothing attempted. Method call not attempted. 0 points Processing response not attempted. 0 points No comments
Purchase answer to see full attachment
User generated content is uploaded by users for the purposes of learning and should be used following Studypool's honor code & terms of service.

Explanation & Answer

View attached ex...

Related Tags