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,253 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...
  • 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...
  • 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...
  • 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.
  • I'm afraid the course is a bit outdated. It explains the matter nicely, but does not offer a proper and effective way to make web scraping today.
    The teacher's ego overshadows the merits a bit, but the course offers some interesting, unique things - including interviews with developers of software languages and tools.
  • Anonymous
    This one is the third in the specialization and topics get more complicated. The material covers regular expressions, using network sockets, retrieving web pages, parsing HTML, XML and JSON, Service Oriented Architecture (SOA), and Application Programming...
  • 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 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

    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...
  • Nikita Neganov completed this course, spending 4 hours a week on it and found the course difficulty to be medium.

    As I mentioned in the previous reviews about this Specialisation, 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
    For someone without any background in programming, this course was extremely frustrating as it assumes outside knowledge. The first two courses were self-contained in that everything taught was explained within the course. No so with this third course: I didn't understand half of what Dr. Chuck said and felt hopelessly lost. Sure there are resources on the web to help but I felt left behind without remedy. The courses went from low gear to suddenly high gear without the appropriate support. I'm sure it was a positive experience for people with some extra background or knowledge, but I'm not sure if I can make it through the entire specialization after this.
  • Anonymous
    Although I agree with other participant feedback that (1) you might sometimes feel left alone and (2) not all code is thoroughly explained during the course, I am still very happy to have finished this one. This is because being a beginner in programming...
  • Profile image for Jim Long
    Jim Long
    I like that this course challenges me to think about the solution and not just copy/paste or look on the web for answers. It also encourages me to engage with the forum for a better understanding of what the solution is, rather than just studying alone...

Never Stop Learning!

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

Sign up for free