subject

Coursera: Using Python to Access Web Data

 with  Charles Severance
Class Central Course Rank
#3 in Subjects > Programming > Programming Languages

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.

Syllabus

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.

820 Student
reviews
Cost Free Online Course (Audit)
Provider Coursera
Language English
Certificates Paid Certificate Available
Calendar 6 weeks long
Sign up for free? Learn how

Disclosure: To support our site, Class Central may be compensated by some course providers.

+ Add to My Courses
FAQ View All
What are MOOCs?
MOOCs stand for Massive Open Online Courses. These are free online courses from universities around the world (eg. Stanford Harvard MIT) offered to anyone with an internet connection.
How do I register?
To register for a course, click on "Go to Class" button on the course page. This will take you to the providers website where you can register for the course.
How do these MOOCs or free online courses work?
MOOCs are designed for an online audience, teaching primarily through short (5-20 min.) pre recorded video lectures, that you watch on weekly schedule when convenient for you.  They also have student discussion forums, homework/assignments, and online quizzes or exams.

Reviews for Coursera's Using Python to Access Web Data
4.8 Based on 820 reviews

  • 5 stars 82%
  • 4 stars 15%
  • 3 stars 2%
  • 2 stars 0%
  • 1 stars 0%

Did you take this course? Share your experience with other students.

Write a review
  • 1
5.0 11 months ago
by 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 a little tougher and this one is the first course that really took me some time to finish it. This time I really had to listen to some lectures twice, to debug my code a hell lot of times and to stick to the sample code a lot.

Students, who have programming experience might still think that this course is too slow and easy, but it is a great way for the beginner to learn python.

The only problem that seems to appear is new coursera policy, that doesn't allow you to submit assignments before you pay for the course, e.g. you can only get access to theory unless you pay. But there is a solution - Dr Chuck has created his own website to complete these courses https://www.py4e.com//

To sum up:
Read more
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 a little tougher and this one is the first course that really took me some time to finish it. This time I really had to listen to some lectures twice, to debug my code a hell lot of times and to stick to the sample code a lot.

Students, who have programming experience might still think that this course is too slow and easy, but it is a great way for the beginner to learn python.

The only problem that seems to appear is new coursera policy, that doesn't allow you to submit assignments before you pay for the course, e.g. you can only get access to theory unless you pay. But there is a solution - Dr Chuck has created his own website to complete these courses https://www.py4e.com//

To sum up: great course, uprising difficulties, recommend to enroll after finishing previous courses. 10/10
Was this review helpful to you? Yes
4.0 a year ago
Anonymous completed this course.
I began learning Python with this course. With absolutely no prior knowledge of or experience in Python (except lots of curiosity), I came across the first two courses on Coursera.org and loved Dr Charles' videos. It's a well structured course, especially if you have just started learning about Python and wish to build your skills more practically than by mere reading of numerous resources. There are plenty of resources that Dr Chuck (as he is fondly referred to by his students) offers in the duration of the course. I especially enjoy the bonus videos that accompany this course. They really help increase your knowledge base and urge you to know and be better and try your hand at various things. I'm glad I decided to pursue the entire specialization offered by University of Michigan, and it is all thanks to Dr. Chuck!
1 person found
this review helpful
Was this review helpful to you? Yes
5.0 a year ago
Anonymous completed this course.
It's a very good course for many reasons. I learnt practical skills easily. It is always fun listening to dr Chuck who always says interesting and useful things. Although I think that the edX/MIT course I took was excellent, I think dr Chuck does amazing job and he is number 1 for me (he's my HERO, I love him!)

Maybe the assignments were a bit to easy, but I think there were like a guidance for us to know how to start and what to learn. In my opinion there was not enough about urllib, but it's up to us whether we want to learn it or not and the course wasn't the best place for it (I'm going to learn all the library/modules used by dr Chuck)

I think I've learnt amazing skills already thanks to dr Chuck.
1 person found
this review helpful
Was this review helpful to you? Yes
1.0 6 months ago
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 assignments were way too difficult and I had to search the web for hours to find some help to solve them. Or, quite honestly, I had to cheat my way through them, because I just didn't know what to do anymore. There are of course the discussion forums where one can state one's problem - but although the staff and mentors are really quick with replying (thumbs up for that), their tips are often way too general and not helpful at all.

After taking this third course I will definitely not continue with the Specialization, as I originally planned to, simply because in comparison to the first two courses, this third course is way too difficult and frustrating!

Also, in my opinion, Dr Chuck tries to squeeze in far
Read more
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 assignments were way too difficult and I had to search the web for hours to find some help to solve them. Or, quite honestly, I had to cheat my way through them, because I just didn't know what to do anymore. There are of course the discussion forums where one can state one's problem - but although the staff and mentors are really quick with replying (thumbs up for that), their tips are often way too general and not helpful at all.

After taking this third course I will definitely not continue with the Specialization, as I originally planned to, simply because in comparison to the first two courses, this third course is way too difficult and frustrating!

Also, in my opinion, Dr Chuck tries to squeeze in far too many different topics and different programming langauges into this course, instead of really just focusing on Python itself.

I completed this course, yes, but it left me with a very frustrated and unsatisfied feeling. I don't think I was really able to learn a lot from it, which is really a pity, since I enjoyed the first two courses so much.

Sorry for the bad feedback, but this is honestly how I felt about the course!
Was this review helpful to you? Yes
5.0 a month ago
Anonymous audited this course.
The only caveat I have with the course is the impossibility to audit and do the assignments (don't care about submitting them, but having access to the prompts would be nice). Luckily, Dr. Chuck has made those available somewhere else. That said, it builds nicely on top of the previous courses and increases the difficulty in a gradual manner. I would say here you will find to start going back and forth making sense of the earlier lessons and combining what you learned to make the assignments come to life. Nevertheless, it is possible to do that, and you will learn that the first two were indeed a good stepping stone for the ones to follow. Thank you, Dr. Chuck!
Was this review helpful to you? Yes
4.0 a year ago
Anonymous completed this course.
"Using Python to Access Web Data" was definitely more challenging than its predecessors in the specialization but it gave me a good taste for how even a simple program in Python can reach out to the world, access meaningful data, and do something useful with it. I would find to be helpful additional programming examples and/or code which used more of the built-in functions offered by a touched-on library, such as urllib and json. Review of the Python programming manuals reveal a seemingly immense amount of functionality and if this course explored a bit more in those areas, I'd feel more enriched. Maybe some of the largely extraneous "office hours" segments could be replaced with on-topic educational content.

Was this review helpful to you? Yes
5.0 a year ago
by Elena Stankevich completed this course, spending 6 hours a week on it and found the course difficulty to be medium.
I moved to the US a couple years ago and started my career from scratch in completely different sphere - Quality Assurance. I never supposed myself to be a technical person and felt uncomfortable with IT things. I have in my head the combination of tech terms and tools mixed up with huge gaps, this course helped me to systematize my knowledge and feel more confident and engaged with what I am doing. I completed 3/4 sessions and would rate the first two 5 stars, and probably give a little bit less, 4 stars, to the third one, only because sometimes I had to find on the Internet additional materials which were not covered by lecture and course materials to complete my assignments.
Was this review helpful to you? Yes
5.0 a year ago
by Sebastien Koller completed this course.
I have started a year ago the first module "Programming for Everybody (Getting Started with Python)", then I was very enthusiast and took the second module "Python Data Structures", then... a lot of professional changes, no time to continue.. but few weeks ago I thought, I really want to try this third module "Using Python to Access Web Data", and honestly it was very great, what I have learned is just amazing what you can do with so little program in Python! I will definitively try the fourth module "Using Databases with Python" even if my time is counted. Maybe a capstone at the end, not sure yet but would definitively be a "+" to get some experience. I recommend all the courses with Dr. "Chuck", definitively!
Was this review helpful to you? Yes
4.0 a year ago
Antoine Cotten completed this course, spending 1 hours a week on it and found the course difficulty to be easy.
Dr. Chuck's explanations are clear and all the lessons are easy to follow: focus on relevant web technologies, perfect pace, examples based on popular APIs.

As someone with some basic knowledge in programming already I was expecting the assignments to be more challenging. As clearly announced on the website this course is targeted at beginners who took the previous courses from the same teacher: all exercises can be solved in about 10-15 lines of code and the solutions can be directly applied from the videos without much further thinking. The rest of you will, like me, breeze through it in no time.

Kudos for the extremely interesting interview videos proposed as bonus material!
Was this review helpful to you? Yes
5.0 a year ago
Anonymous completed this course.
Great instructor, great class, and very easy to follow. I learned a LOT!

My only critique, is that many times when I am trying to fully understand how some code works within the presentation, the presentation will suddenly show the instructor speaking briefly, and then go back to the code. We don't need to see Steve. When he's trying to explain how code works during the presentation, just show the code. This allows me to understand what's going on while he's still speaking. Otherwise I need to pause the video, and by that point I'm no longer focused on what he was talking about.

Otherwise, this course is near perfect, and I've learned a ton from it. Thanks!
Was this review helpful to you? Yes
4.0 10 months ago
Anonymous completed this course.
I found this course challenging in a good way. It definitely ramps up the difficulty a bit from the prerequisite courses. However it is still quite approachable. I learned a lot. My only suggestion for improvement would be to directly reference the python documentation a bit more in the lectures (as a gentle invitation to reading more and discovering the more advanced capabilities) Of course you could do this on your own, but pointing out interesting landmarks to the uninitiated makes every journey better.
Was this review helpful to you? Yes
5.0 2 months ago
Anonymous completed this course.
Best programming course have ever taken.

I usually drop programming courses when the homework/test requirements far exceed lectures and examples. The ability to test your programming live (how do you know you got the correct answer??? ) is a well thought out component of this course.

Dr. Severance uses everyday language and doesn't omit steps to explain: why would you use this lesson, how the program works, how to type it correctly, how to test your programming and how to fix errors in your programming once you find them. He also offers PLENTY of examples so you can figure things out for yourself. Each lecture builds on the skills of previous lectures. The resources for this course are excellent. I always felt I could look up an example in the e-lectures, slides, slide-text, or book.

The course never assumes you know more than you should (for example when to use tabs, brackets or parentheses, how to use a 'for loop' correctly, and how to
Read more
Best programming course have ever taken.

I usually drop programming courses when the homework/test requirements far exceed lectures and examples. The ability to test your programming live (how do you know you got the correct answer??? ) is a well thought out component of this course.

Dr. Severance uses everyday language and doesn't omit steps to explain: why would you use this lesson, how the program works, how to type it correctly, how to test your programming and how to fix errors in your programming once you find them. He also offers PLENTY of examples so you can figure things out for yourself. Each lecture builds on the skills of previous lectures. The resources for this course are excellent. I always felt I could look up an example in the e-lectures, slides, slide-text, or book.

The course never assumes you know more than you should (for example when to use tabs, brackets or parentheses, how to use a 'for loop' correctly, and how to import a python module). The syntax is very well explained and exampled!



I would also like to mention the helpful staff. They are patient, kind, and quick to reply.

I have highly recommended this instructor and pathway (Dr. Severance: U of Mi: Python for Everybody) for first time learners. If anyone wants to learn any computer language it would be best to start with this class path to get the basics down. Then go to another language.

Thank you, Coursera, U of MI, Dr. Severance, and his staff!

Was this review helpful to you? Yes
4.0 a year ago
Anonymous partially completed this course.
Useful course. The lectures get immediately to the point of using Python to extract and work with web data. The assignments build gradually on each other. Eg. code for an XML assignment is suggested in the instructions as a base to create the JSON assignment. It might look repetitive, but I think it helps us understand the similarities and differences between the different web elements introduced in this course.
Was this review helpful to you? Yes
4.0 a year ago
by Amit Bakhru completed this course, spending 5 hours a week on it and found the course difficulty to be medium.
The course is great for those just starting with Python. Introduces you to the basics. The instructor is great - completely considers that the students are beginners and takes them through the course accordingly.

The difficulty level can be taken just a tad higher although I guess the expectation is for students to themselves take up the more complex part.

Overall the course does what it is supposed to do.
Was this review helpful to you? Yes
2.0 11 months ago
Anonymous completed this course.
This course is not bad, but it is overdue for updating. First, compared to the first two courses in the specialization, this third course doesn't have a good setup. A lot of the video time is basically dr Chuck talking, looking down at his screen. You only see his face, not the slide with the code that he is talking about. This is problematic: how is one supposed to follow what he is saying? One has to download and open the slides on the side to be able to follow. Courses 1 and 2 had dr Chuck in a small window while the slide was showing - that was much better. Second, this course is about Python 2, while the equivalent videos and assignments for Python 3 are available for free, online, under a different name. Why should Coursera charge for the old version of a course whose updated edition is available elsewhere for free?? Third, for some reason starting in course #3, dr Chuck starts talking much faster. Suddenly he just rattles off his class and one has to repeat sections just to capt
Read more
This course is not bad, but it is overdue for updating. First, compared to the first two courses in the specialization, this third course doesn't have a good setup. A lot of the video time is basically dr Chuck talking, looking down at his screen. You only see his face, not the slide with the code that he is talking about. This is problematic: how is one supposed to follow what he is saying? One has to download and open the slides on the side to be able to follow. Courses 1 and 2 had dr Chuck in a small window while the slide was showing - that was much better. Second, this course is about Python 2, while the equivalent videos and assignments for Python 3 are available for free, online, under a different name. Why should Coursera charge for the old version of a course whose updated edition is available elsewhere for free?? Third, for some reason starting in course #3, dr Chuck starts talking much faster. Suddenly he just rattles off his class and one has to repeat sections just to capture the words he's saying because it's spoken so fast. Fourth, the "forum" is not a forum at all. There is really not much space for asking questions to other classmates or interacting with them, as the course moderators tend to shut down many discussions and questions. Eg. if you dare to ask a question about Python 3, they'll slam you right down. I understand they don't want to answer questions about Python 3, but seriously, why prohibit discussion or help between students?
Was this review helpful to you? Yes
5.0 a year ago
Anonymous completed this course.
This is absolutely a worthwhile course for anyone interested in manipulating data gathered from various sources. Dr. Chuck's lectures and extra videos are extremely valuable and place interesting context around the course information. I would recommend this course to anyone (after taking Dr. Chuck's early courses which build upon one another). Thank you Dr. Chuck & U of M! - Jeff
1 person found
this review helpful
Was this review helpful to you? Yes
4.0 a year ago
Anonymous completed this course.
This was the 3rd course in the series of 5. The lectures were excellent in distilling the salient features. This seems to be the point where the series is deviating into more of a high level summary of things you can do with various python modules. In this case it focused on the skimming the surface of how to access web sites and use some web services. It provided a nice summary of industry standard data formats. You will not be savvy web programmer at the end of this course. You will have an basic understanding of how to use python to accomplish some very basic web scraping tasks or how to go about using web services. The assignments have now turned into very simple tests to prove you understand what was taught. They are not intended to challenge you with complicated programming problems. They do accomplish the task of proving you can do the very basic things you just learned. Bridging the gap to being able to do more sophisticated programs will require considerably more programming
Read more
This was the 3rd course in the series of 5. The lectures were excellent in distilling the salient features. This seems to be the point where the series is deviating into more of a high level summary of things you can do with various python modules. In this case it focused on the skimming the surface of how to access web sites and use some web services. It provided a nice summary of industry standard data formats. You will not be savvy web programmer at the end of this course. You will have an basic understanding of how to use python to accomplish some very basic web scraping tasks or how to go about using web services. The assignments have now turned into very simple tests to prove you understand what was taught. They are not intended to challenge you with complicated programming problems. They do accomplish the task of proving you can do the very basic things you just learned. Bridging the gap to being able to do more sophisticated programs will require considerably more programming hours per assignment so you either need to create projects to do by yourself or have some professional need to accomplish a real job. I really can't fault Coursera for not being able to do this since that requires a much more interactive approach to get feedback on your programs as you are designing them. Overall it was a nice introduction to how some things work and how python can be used to work with the data.
Was this review helpful to you? Yes
4.0 a year ago
Anonymous completed this course.
Part 3 of the 4 part P4 Everyone course. I think there's also a 5th part that is a programming project of sorts. Very much looking forward to starting that. But, back to part 3. This part was definitely a bit more challenging (but not overly so). As with the previous parts, the amount of material covered is deceiving because of the clear and concise manner in which it's presented. Having said that, it's now getting to the point where we have really covered a lot of material. The challenge for me is to retain it. for this I (personally) need MORE REPETITION. My only complaint is that there aren't more exercises to do. The text has a few extras, and I HIGHLY recommend doing these, but I'd like many more. As mentioned above, I am eagerly awaiting the programming assignment at the end. I hope this will help tie it all together (if I survive part 4). All-in-all, I highly recommend this course for people like myself who are doing this 'on the side'. For that audience, this form
Read more
Part 3 of the 4 part P4 Everyone course. I think there's also a 5th part that is a programming project of sorts. Very much looking forward to starting that. But, back to part 3. This part was definitely a bit more challenging (but not overly so). As with the previous parts, the amount of material covered is deceiving because of the clear and concise manner in which it's presented. Having said that, it's now getting to the point where we have really covered a lot of material. The challenge for me is to retain it. for this I (personally) need MORE REPETITION. My only complaint is that there aren't more exercises to do. The text has a few extras, and I HIGHLY recommend doing these, but I'd like many more. As mentioned above, I am eagerly awaiting the programming assignment at the end. I hope this will help tie it all together (if I survive part 4). All-in-all, I highly recommend this course for people like myself who are doing this 'on the side'. For that audience, this format seems close to spot-on. For software engineer types, this format will surely be lacking and not rigorous enough, but those people are in university studying SE already. Me, I'm a statistician in my mid 50's who is making a career pivot into the land of GIS, and in that space, Python programming is absolutely essential. I really liked the geojson example with the google geocoder API. Go Dr. Chuck!
Was this review helpful to you? Yes
5.0 12 months ago
by Marcos Antonio Quintana Marin completed this course.
Muy interesante, práctico y divertido, lo recomiendo. Excelente profesor, muy ameno y claro en sus explicaciones. Los ejercicios son útiles y permiten apropiarse de los conocimientos así como ilustra posibles usos en las aplicaciones.
Was this review helpful to you? Yes
5.0 a year ago
Anonymous completed this course.
The flow of the teacher is very good and easy understanding. He shows everything in a simple way and it makes easier and more attractive. Thank you
2 people found
this review helpful
Was this review helpful to you? Yes
  • 1

Class Central

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

Sign up for free