Network Programming Study Guide¶
An Introduction to Python Network Programming
By: Tim Bower
This Network Programming Study Guide provides notes and information intended to guide students towards successful completion of the Network Programming (CMST 355) class offered by K–State at Salina, which is the campus of Kansas State University located in Salina, Kansas.
The text book for this class is Foundation of Python Network Programming by John Goerzen, Apress, 2004, with updates from the second edition of the same. All references in this guide to The Text Book are to Goerzen’s text. See the Preface to the Network Programming Study Guide for some comments about the book and this study guide.
- Network Programming is a class taught at K–State at Salina by Tim Bower. Self study of the material in the Study Guide is welcome.
- Full access to the video lectures and demonstrations is through K-State Online, which requires enrollment in the class. Some of the demonstration type videos are available on the Python Network Programming Video Series on ShowMeDo.
- Access to the notes in this study guide is made available by the Creative Commons Attribution 3.0 United States License. You are free to use these notes, but if you use any of the material as part of your own work, please give me credit where due.
- 1. Administrative Information
- 2. The Python Programming Language
- 2.1. Introduction to Python
- 2.2. Control Constructs
- 2.3. Python Data Containers
- 2.4. Using and Generating Python Sequences
- 2.5. Python Input / Output Facilities
- 2.6. Organizing Python Source Code
- 2.7. Making Python Programs Robust
- 2.8. Built-in Python Functions and Standard Library
- 2.9. Python Key Words
- 2.10. What Does That Line of Python Code Do?
- 3. Topic 1 - Programming with Sockets
- 4. Network Client Development
- 5. Topic 2 - Programs using DNS
- 6. Topic 3 - Programming for the Web
- 6.1. HTTP Protocol
- 6.2. Retrieving Web Pages with HTTP
- 6.3. Parsing HTML Data
- 6.4. Example of Parsing HTML Web Pages with Html5lib
- 6.5. Documentation of the wxWeather Program
- 6.6. Programming Assignment 3 – Parsing HTML Web Pages
- 6.7. API based Web Programming
- 6.8. Programming Assignment 4 – Web Based APIs
- 6.9. XML and XML-RPC
- 7. Topic 4 - Electronic Mail
- 8. Topic 5 - SSL
- 9. Topic 6 – Developing Network Server Programs
- 10. Bibliography