Welcome back. At this point, you should be able to parse a URL into its component parts, their protocol like HTTP or HTTPS, the host typically a domain name, and the path. You should be able to use the Python request module to fetch the contents of a URL. When you fetch a web page, the server response where the response code is one of the HTTP headers. Two hundred means that it was able to respond successfully. '404' means file not found. That is the server doesn't recognize the path that you asked for. '401' means that you're not authorized access to that content, and '301' means the content has moved to a different URL. Here's a couple amusing stories about other error codes. First, there's error '451', unavailable for legal reasons. It's intended to be used when resource access is denied for legal reasons, like censorship or government mandated blocked access. It's, of course, a reference to the novel, Fahrenheit 451, where books are outlawed and they're burned. Paper auto ignites at around 451 degrees Fahrenheit. Second, perhaps you've heard of the Internet of Things where cars and toasters, refrigerators are all getting connected to the Internet. On April first, 1998, as an April Fool's prank, Larry Masinter published a document describing the HTCPCP. The hypertext coffee pot control protocol, it's for computer programs to control, monitor, and diagnose coffee pots. You can send headers specifying whether the coffee should include milk and cream and so on. Among other amusing elements of this document, it defines an error status code, '418', I'm a teapot. But, when you've connected by mistake to a teapot instead of a coffee pot, the document notes that the resulting "Entity body" the texts that gets sent back maybe "Short and stout". I kid you not, you can do a search for RFC 2324 and you'll find the whole document. I'll see you next time.