Your browser is ancient!
Upgrade to a different browser to experience this site.

Data Collection and Processing with Python

What You'll Learn

  • Fetch and process data from Internet services effectively.
  • Master Python list comprehensions for data extraction and processing.
  • Utilize the Python requests module to interact with REST APIs and navigate API documentation.
4 Modules
20 Hours
5 hrs per module (approx.)
Rating

About Data Collection and Processing with Python

This course teaches you to fetch and process data from services on the Internet. It covers Python list comprehensions and provides opportunities to practice extracting from and processing deeply nested data. You'll also learn how to use the Python requests module to interact with REST APIs and what to look for in documentation of those APIs. For the final project, you will construct a “tag recommender” for the flickr photo sharing site.

The course is well-suited for you if you have already taken the "Python Basics" and "Python Functions, Files, and Dictionaries" courses (courses 1 and 2 of the Python 3 Programming Specialization). If you are already familiar with Python fundamentals but want practice at retrieving and processing complex nested data from Internet services, you can also benefit from this course without taking the previous two.

This is the third of five courses in the Python 3 Programming Specialization.

Skills You'll Gain

  • Data Analysis
  • Data Collection
  • Python For Data Analysis
  • Python (Programming Language)

What You'll Earn

Certificate of Completion:
Certificates of completion acknowledge knowledge acquired upon completion of a non-credit course or program.
Experience Type
100% Online
Format
Self-Paced
Subject
  • Data Science
  • Technology
Platform
Coursera
Welcome Message

Data Collection and Processing with Python builds foundational skills for working with structured and unstructured data. Designed for non-programmers, the course emphasizes practice and mastery while guiding learners through nested data, accumulation patterns, and applied data integration projects using Python. This course is part of the Python 3 Programming series.

This abbreviated syllabus description was created with the help of AI tools and reviewed by staff. The full syllabus is available to those who enroll in the course.

Course Schedule

Module 1: Introduction

  • Video: Introduction to the Specialization
  • Video: What’s New? Updates and Improvements in the Second Edition
  • Video: Welcome to Python Data Collection and Processing with Python
  • Reading: Syllabus
  • Video: (Optional) How to Use the Interactive Textbook
  • Reading: A note to learners who have not taken the updated course 2 - Functions, Files and Dictionaries
  • Video: Executing Python in the Jupyter Environment
  • Ungraded Lab: (Optional) Getting Started with Jupyter Notebooks
  • Reading: Help Us Learn More About You!

Module 2: Nested Data and Nested Iteration

  • App Item: Use the Runestone Practice Tool
  • Video: Introduction - Nested Data
  • Video: Nested Lists
  • App Item: Introduction: Nested Data and Nested Iteration
  • Video: Nested Dictionaries
  • App Item: Nested Dictionaries
  • Video: JSON Format and the JSON Module
  • App Item: Processing JSON Results
  • Ungraded Lab: (Optional) JavaScript Object Notation (JSON)
  • Video: Conclusion - Nested Data
  • Video: Introduction - Nested Iteration
  • Video: Nested Iteration
  • App Item: Nested Iteration
  • Video: Structuring Nested Data
  • App Item: Structuring Nested Data
  • Video: Shallow Copies
  • Video: Deep Copies
  • App Item: Deep and Shallow Copies
  • Video: Extracting from Nested Data
  • App Item: Extracting from Nested Data
  • Video: A Worked Example of Nested Iteration
  • Video: Conclusion: Nested Data and Nested Iteration
  • Graded Assignment: Optional - What Did You Use to Practice This Week?

Module 3: Map, Filter, and List Comprehensions

  • App Item: Use the Runestone Practice Tool
  • Video: Introduction - Map and Filter
  • App Item: Introduction: Map, Filter, List Comprehensions, and Zip
  • Video: Map
  • App Item: Map
  • Video: Filter
  • App Item: Filter
  • Ungraded Lab: (Optional) Map and Filter
  • Video: Conclusion - Map and Filter
  • Video: Introduction - List Comprehensions
  • Video: List Comprehensions
  • Video: List Comprehensions Example 1
  • Video: List Comprehensions Example 2
  • App Item: List Comprehensions
  • Video: Conclusion - List Comprehensions
  • Video: Introduction - Zip
  • Video: Zip
  • App Item: Zip
  • Video: An Example Using Zip
  • Ungraded Lab: An Example Using Zip
  • Video: Conclusion - Zip
  • Ungraded Lab: (Optional) Review and List Comprehensions Warmup
  • Graded Assignment: Optional - What Did You Use to Practice This Week?

Module 4: Internet APIs

  • App Item: Use the Runestone Practice Tool
  • Video: Introduction - REST APIs
  • Video: URLs, Domain Names, and IP Addresses
  • Video: Routing
  • Video: HTTP: Behind the Scenes
  • Video: URL Query Parameters
  • App Item: The Internet: Behind the Scenes
  • App Item: Anatomy of URLs
  • App Item: The HTTP Protocol
  • Video: REST API URLs
  • App Item: Using REST APIs
  • Video: The requests Module
  • Video: Generating URLs with requests.get
  • App Item: Fetching a Page
  • Video: Conclusion - REST APIs
  • Video: Introduction - Using REST APIs
  • Video: Reading API Documentation: Datamuse
  • App Item: Figuring Out How to Use a REST API
  • Video: Debugging Calls to requests.get
  • App Item: Debugging Calls to requests.get
  • Video: Caching Response Content
  • Video: The requests_with_caching Module
  • App Item: Caching Response Content
  • Ungraded Lab: (Optional) REST APIs
  • Ungraded Lab: (Optional) Request Data with Cache
  • Video: Conclusion - Using REST APIs
  • Video: Introduction - Practice with REST APIs
  • Video: iTunes API
  • App Item: Searching for Media on iTunes
  • Video: flickr API
  • App Item: Searching for tags on Flickr
  • App Item: Unicode for Non-English Characters
  • Video: Conclusion - Practice with REST APIs
  • Video: Fun with the Google Places API
  • Video: Running Python in Hosted Systems
  • Video: Creating Your Own API - Part 1
  • Video: Creating Your Own API - Part 2
  • Video: Creating Your Own API - Part 3
  • Video: Introduction - Final Course Project
  • Reading: Course Feedback
Grading Policy

The passing threshold is 100%. The course grade is based on two assessments worth 25% each, and a project worth 50% of the final grade.

Course content developed by U-M faculty and managed by the university. Faculty titles and affiliations are updated periodically.

Intermediate Level

Some related experience required

Enrollment Options

Individuals

This experience is available to individual learners on the following platforms:

U-M Community

Students, faculty, staff, and alumni of the University of Michigan get free access.

Organizations

Special pricing and tailored programming bundles available for organizational partners.

What are Coursera and edX?

Michigan Online learning experiences may be hosted on one or more learning platforms. Platform features may vary, including payment models, social communities, and learner support.

Coursera

  • Hosts online courses, series, and Teach-Outs from Michigan Online
  • Enroll and preview courses anytime
  • May earn a non-credit certificate from Coursera

edX

  • Hosts online courses and series from Michigan Online
  • Many offer a free (limited) audit option
  • May earn a non-credit certificate from edX

For more information visit the What are Coursera and edX? FAQ section

Reviews and Ratings

4.7

3183 Ratings from Coursera

Michigan Online
For You

Sign up for a Michigan Online account to customize your experience!