Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

University of Michigan

Using Python to Access Web Data

University of Michigan via Coursera


This course will show how one can treat the Internet as a source of data. We will scrape, parse, and read web data as well as access data using web APIs. We will work with HTML, XML, and JSON data formats in Python. This course will cover Chapters 11-13 of the textbook “Python for Everybody”. To succeed in this course, you should be familiar with the material covered in Chapters 1-10 of the textbook and the first two courses in this specialization. These topics include variables and expressions, conditional execution (loops, branching, and try/except), functions, Python data structures (strings, lists, dictionaries, and tuples), and manipulating files. This course covers Python 3.


  • Getting Started
    • In this section you will install Python and a text editor. In previous classes in the specialization this was an optional assignment, but in this class it is the first requirement to get started. From this point forward we will stop using the browser-based Python grading environment because the browser-based Python environment (Skulpt) is not capable of running the more complex programs we will be developing in this class.
  • Regular Expressions (Chapter 11)
    • Regular expressions are a very specialized language that allow us to succinctly search strings and extract data from strings. Regular expressions are a language unto themselves. It is not essential to know how to use regular expressions, but they can be quite useful and powerful.
  • Networks and Sockets (Chapter 12)
    • In this section we learn about the protocols that web browsers use to retrieve documents and web applications use to interact with Application Program Interfaces (APIs).
  • Programs that Surf the Web (Chapter 12)
    • In this section we learn to use Python to retrieve data from web sites and APIs over the Internet.
  • Web Services and XML (Chapter 13)
    • In this section, we learn how to retrieve and parse XML (eXtensible Markup Language) data.
  • JSON and the REST Architecture (Chapter 13)
    • In this module, we work with Application Program Interfaces / Web Services using the JavaScript Object Notation (JSON) data format.

Taught by

Charles Severance


Related Courses


4.7 rating, based on 4,406 reviews

Start your review of Using Python to Access Web Data

  • Anonymous

    Anonymous completed this course.

    I have one big criticism of this class. The Python keyword "import" is never explained. The concept of "module" is never explained. We're just told to cant this magic incantation "import re" and suddenly statements that generated traceback errors...
  • As I mentioned in the previous reviews about this Specialization, all these courses are meant for beginners without previous programming experience and difficulty of courses rises gradually. Thus, the first course was a real piece of cake, second got...
  • Anonymous

    Anonymous completed this course.

    I really enjoyed the first two courses of Dr. Chuck's Python for Everybody Specialization -- but not this one. As some other reviewers have already stated I, too, felt increasingly frustrated and somehow left alone during this course. Most of this course's...
  • This course has helped me a big deal. Mr. Severence is such a genius in preparing the courses for his students to succeed. And something I liked most about the course is that one had to go on the ground and do tremendous research by himself to understand how certain things work out. Some people might find this very challenging but a good instructor does not spoon feed his trainee on a silver plate. The trainee's hands have to et dirty so as to grasp the concept permanently. To me, this course has changed my life and nowadays I don't have time to waste because everytime I get, I want to code and feel the excitement of discovering more things and seeing how things work out. Learning never stops, see you in the next chapter.
  • Anonymous
    I am working my way through the Python Specialization. The first two courses were fantastic. This course, "Using Python to Access Web Data", was a bit of a struggle. While I still like Dr. Chuck's on camera teaching and the examples he provided, the...
  • I'm once again convinced that Dr. Chuck is a great teacher, his attitude and his way to explain things is one of the best parts of this course.
    About the contents, materials and assignments, I really noticed a difficulty increase compared to the previous courses.
    The only thing I think should be fixed is non explained code, there where some parts of the code that we just skipped over and weren't really explained, for me, this is the only negative thing about this course, because it made me have to look things up or to copy some parts of the sample code.
    Overall im really happy with the course and I'll keep with the specialization
  • Jerald Dana Cole

    Jerald Dana Cole completed this course, spending 5 hours a week on it and found the course difficulty to be medium.

    I just completed the course. It is excellent, but needs a few bug fixes. The Week 5 Chapter assignment references the wrong exemplar (not wrong, per se, but far more complex than a simpler example covered in the lectures that transfers better to the...
  • Ilke Guntan
    It was a nice course as an introduction to access web data. However, compared to previous courses, the explanation part was shorter and it was more on the edge of 'believe me and write the code like...' It made harder to learn it in true sense. I guess, it is mostly because of the explanations requires too much background knowledge that cannot be convey in these short lessons. I would prefer to have it longer though.
  • I owe Dr. Chuck a huge debt of gratitude for this fantastic education. This is a challenging course, but with your guidance and your teaching style, you were able to get me to finish it. I've also learned a lot of new methods, libraries, and techniques.

    Thank you again for teaching this course and for helping me improve my abilities. This will be really beneficial to my Python career.
  • I think I will understand much more clearly what I learnt in this course when I do several practices on web for self requirements. This course absolutely not for beginners, the codes are getting sophisticated so it require much more effort to understand. Thanks to Mr.Severance who makes the course as simple as to learn for us.
  • Anonymous
    This is the third course of a five-part "Python for Everybody" specialization. The first two courses I found quite easy although I have some previous coding experience (FORTRAN, C/C++). This course was more challenging. Week 1 is about installing Python,...
  • The necessity of things like SSL encryption aren't explained, just kinda referenced. Good start to understanding where you can begin learning these kinds of things.
  • A little bit difficult but you can complete the course with hard work, the course has an excellent teacher
  • Steve Schoenbaechler

    Steve Schoenbaechler completed this course.

    With this review, you must understand, a major part of this review is because of my interest/expectations/etc., what I was looking for from the course. If you are interested in “fully engaging” in Python, becoming a computer scientist, etc., this course...
  • Anonymous
    I have one big criticism of this class. The Python keyword "import" is never explained. The concept of "module" is never explained. We're just told to cant this magic incantation "import re" and suddenly statements that generated traceback errors suddenly...
  • Anonymous

    Anonymous is taking this course right now.

    Although my specialty is zoology, I signed up and paid for this course (one in a series offered by them) to learn a little about Python which intrigued me for some reason. The course gives a somewhat disjointed, quick overview of using Python to access...
  • Anonymous

    Anonymous completed this course.

    First course in the specialization that really gets you going (as promised in the two previous classes). It also will take some more effort, but you can use the knowledge built in the two previous courses. It is rightfully classified as "Intermediate"...
  • Anonymous
    I rate this course as an initial foray into data scraping off the web. It certainly provides insight into different methodolgies for doing this and to parse data into useable information. I say initial foray into the subject, for clearly there is a huge...
  • Anonymous

    Anonymous completed this course.

    This third course applies and builds on the basic knowledge from the first two python courses. Especially interesting is the information on regular expressions, which kicks this course off. Following this the course gears up into a higher transmission...
  • This is a very good course for a beginner who is learning to access Web data using Python. I have finished the first 2 courses and it was really good. After starting this course I found out that it was very different from the first 2 courses. That is why it took me more than 2 months to complete this couse.

    I am grateful that I had the chance to take this course and complete it. The syllabus covers a wide range of topic from HTML, XML, Json to API's and how to read tweets from Twitter.

    This has been a wonderful experience.

Never Stop Learning!

Get personalized course recommendations, track subjects and courses with reminders, and more.

Sign up for free