Consuming HTTP Services in Python Transcripts
Chapter: Welcome to the course
Lecture: Welcome to the course and what we'll cover
0:02 As you know, it's a services world out there,
0:05 almost anything you need to interact with
0:08 has an API and if there is no API, there is probably a webpage
0:11 and I am going to show you that the combination of APIs
0:14 and web pages allow you to connect your app to almost anything.
0:18 So we might want to talk to github to work with source code, repositories,
0:22 automated builds, maybe we want to use Twilio
0:25 for adding telephony and text services to our app,
0:29 of course we want to update people through their Slack channel,
0:32 send and subscribe people to our mailing list via MailChimp
0:37 charge them money over their credit cards using the Stripe APIs,
0:41 query some backend business data using Salesforce,
0:45 send out some emails with SendGrid
0:47 or even manage and work with our projects offline through Basecamp.
0:50 So if we want to connect our app to these types of services, and many more,
0:55 we are going to need to learn how to work with services in Python.
0:59 And that's what consuming HTTP and Soap services in Python is all about.
1:04 So, whether you want to talk to github, Stripe, Basecamp
1:07 or even that old fashioned Soap service that runs the backend of your business,
1:13 you are going to learn how to do that here,
1:15 And by working with all this services,
1:17 you'll see that you can give your app super powers.
1:20 I hope you are very excited to explore the world of services from Python with me.
1:24 What are we going to cover in this course?
1:27 Well, we are going to talk primarily about transports that run over HTTP,
1:32 Rest, Json over Rest or XML, or a variety of other things,
1:39 and we are even going to talk about Soap.
1:42 So we are going to use Requests, we are going to use urllib2
1:46 and we are going to use urllib.requests.
1:48 Now, if you are unfamiliar with these, Requests is the most popular way
1:51 to write Python clients for services,
1:54 however, sometimes we want to use stuff that is in the box if you will
1:57 that comes with your Python distribution that everybody already has,
2:00 because Requests you have to install separately.
2:03 So we are going to talk about Python 2's urllib2 and Python 3's urllib
2:08 and associated submodules like Requests and error and so on.
2:13 Now, many of these services are going to require us to authenticate, to log in,
2:16 so we are going to see how we can do username,
2:19 and password authentication to access restricted services,
2:23 we are going to work with a variety of different data formats.
2:25 When we talk to these HTTP services, they might want to send us data
2:29 back in the form of Json, or xml, or super complicated xml in the form of Soap
2:35 or even binary data, so, we are going to look at how each one of these data formats
2:40 is managed and worked with in Python
2:42 and how to use that kind of data from a service,
2:45 and finally, if there is no service, we are also going to talk about screen scraping.
2:50 Often we'll have a direct end point that we can contact and use
2:54 a well known API against, but if the data is on a webpage and there is no API,
2:58 what do you do? Well, you do screen scraping, and screen scraping will let you go
3:03 to a standard HTML page and more or less turn that HTML page into an API
3:08 or series of HTML pages, so at the end of the course, the final chapter
3:12 that we are going to cover is doing basically adding services to websites
3:16 that don't have services by making their webpage themselves
3:20 the thing that provides data to our app.
3:22 So that is what we are going to cover, and who am I anyway?
3:25 Well, my name is Michael Kennedy, thank you so much for taking my class,
3:29 hey, that's what I look like, it's nice to meet you,
3:32 you can follow me on twitter at @mkennedy and why should I be teaching this course?
3:36 Well, I've been working with Python for quite a while, I run Talk Python To Me,
3:39 the number one Python podcast with over three million downloads,
3:42 so I've had the unique opportunity to interview hundreds of people
3:47 who are doing amazing things in Python and many of them
3:51 have written the libraries that we are actually going to cover here,
3:54 so when it makes sense, I am going to actually give you a look behind the scenes,
3:57 at the people behind some of these technologies
4:01 that we are actually going to cover in this course.
4:03 I am also the creator and founder of Talk Python Training,
4:06 I've written many of the courses and I have over ten years experience
4:09 teaching hundreds of in person and online courses throughout the world,
4:14 so I am super excited you are at my class, it's great to meet you
4:18 and we are going to have a great time working with all of these services.