My Account Log in

2 options

Learning Python network programming : utilize Python 3 to get network applications up and running quickly and easily / Dr. M. O. Faruque Sarker, Sam Washington.

Ebook Central College Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Sarker, M. O. Faruque, author.
Washington, Sam, author.
Series:
Community experience distilled.
Community Experience Distilled
Language:
English
Subjects (All):
Python (Computer program language).
Physical Description:
1 online resource (320 pages) : illustrations (some color).
Edition:
1st edition
Other Title:
Utilize Python 3 to get network applications up and running quickly and easily
Utilize Python three to get network applications up and running quickly and easily
Place of Publication:
Birmingham, England ; Mumbai, [India] : Packt Publishing, 2015.
Language Note:
English
System Details:
text file
Summary:
Utilize Python 3 to get network applications up and running quickly and easily In Detail Network programming has always been a demanding task. With full-featured and well documented libraries all the way up the stack, Python makes network programming the enjoyable experience it should be. Starting with a walkthrough of today's major networking protocols, with this book you'll learn how to employ Python for network programming, how to request and retrieve web resources, and how to extract data in major formats over the Web. You'll utilize Python for e-mailing using different protocols and you'll interact with remote systems and IP and DNS networking. As the book progresses, socket programming will be covered, followed by how to design servers and the pros and cons of multithreaded and event-driven architectures. You'll develop practical client-side applications, including web API clients, e-mail clients, SSH, and FTP. These applications will also be implemented through existing web application frameworks. What You Will Learn Develop an understanding of network stacks and the power of encapsulation Design high-performance network server applications Implement socket-based network applications using asynchronous models Build client applications for major web APIs, including Amazon S3 and Twitter Interact with e-mail servers using SMTP, POP3, and IMAP protocols Deal with remote network servers using SSH, FTP, SNMP, SMB/CIFS, and LDAP protocols Work with IP addresses including Geo-IP lookups Download objects from the Web and craft custom HTTP requests with urllib and the Requests library
Contents:
Cover
Copyright
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Table of Contents
Preface
Chapter 1: Network Programming and Python
An introduction to TCP/IP networks
IP addresses
Network Interfaces
Assigning IP addresses
IP addresses on the Internet
Packets
Networks
Routing with IP
DNS
The protocol stack or why the Internet is like a cake
Layer 4 - TCP and UDP
Network ports
UDP
TCP
UDP versus TCP
Layer 5 - The application layer
On to Python!
Network programming with Python
Breaking a few eggs
Taking it from the top
Downloading an RFC
Looking deeper
Programming for TCP/IP networks
Firewalls
Network Address Translation
IPv6
Summary
Chapter 2 : HTTP and Working with the Web
Request and response
Requests with urllib
Response objects
Status codes
Handling problems
HTTP headers
Customizing requests
Content compression
Multiple values
Content negotiation
Content types
User agents
Cookies
Cookie handling
Know your cookies
Redirects
URLs
Paths and relative URLs
Query strings
URL encoding
URLs in summary
HTTP methods
The HEAD method
The POST method
Formal inspection
HTTPS
The Requests library
Handling errors with Requests
Chapter 3 : APIs in Action
Getting started with XML
The XML APIs
The basics of ElementTree
Pretty printing
Element attributes
Converting to text
The Amazon S3 API
Registering with AWS
Authentication
Setting up an AWS user
Regions
S3 buckets and objects
An S3 command-line client
Creating a bucket with the API
Uploading a file
Retrieving an uploaded file through a web browser
Displaying an uploaded file in a web browser
Downloading a file with the API.
Parsing XML and handling errors
Parsing XML
Finding elements
Handling errors
Further enhancements
The Boto package
Wrapping up with S3
JSON
Encoding and decoding
Using dicts with JSON
Other object types
The Twitter API
A Twitter world clock
Authentication for Twitter
Registering your application for the Twitter API
Authenticating requests
A Twitter client
Polling for Tweets
Processing the tweets
Rate limits
Sending a reply
Final touches
Taking it further
Polling and the Twitter streaming APIs
Alternative oAuth flows
HTML and screen scraping
HTML parsers
Show me the data
Parsing HTML with lxml
Zeroing in
Searching with XPath
XPath conditions
Pulling it together
With great power...
Choosing a User Agent
The Robots.txt file
Chapter 4 : Engaging with E-mails
E-mail terminologies
Sending e-mails with SMTP
Composing an e-mail message
Sending an e-mail message
Sending e-mails securely with TLS
Retrieving e-mails by using POP3 with poplib
Retrieving e-mails by using IMAP with imaplib
Sending e-mail attachments
Sending e-mails via the logging module
Chapter 5 : Interacting with Remote Systems
Secure shell - access using Python
Inspecting the SSH packets
Transferring files through SFTP
Transferring files with FTP
Inspecting FTP packets
Fetching Simple Network Management Protocol data
Inspecting SNMP packets
Reading Light-weight Directory Access Protocol data
Inspecting LDAP packets
Sharing files with SAMBA
Inspecting SAMBA packets
Chapter 6 : IP and DNS
Retrieving the network configuration of a local machine
Manipulating IP addresses
IP network objects
Network interface objects
The IP address objects.
Planning IP addresses for your local area network
GeoIP look-ups
DNS look-ups
Inspecting DNS client/server communications
NTP clients
Inspecting the NTP client/server communication
Chapter 7 : Programming with Sockets
Basics of sockets
Working with TCP sockets
Inspecting the client/server communications
TCP servers
Inspecting client/server interaction
Working with UDP sockets
TCP port forwarding
A non-blocking socket I/O
Securing sockets with TLS/SSL
Inspecting standard SSL client/server communication
Creating a custom SSL client/server
Inspecting interaction between a custom SSL client/server
Chapter 8 : Client and Server Applications
Client and server
An echo protocol
Framing
A simple echo server
Handling the received data
The server itself
A simple echo client
Concurrent I/O
Multithreading and multiprocessing
Threading and the GIL
A multithreaded echo server
Designing a chat server
A chat protocol
Handling data on persistent connections
A multithreaded chat server
Queues
Locks
A multithreaded chat client
Event-driven servers
A low-level event-driven chat server
Frameworks
An eventlet-based chat server
An asyncio-based chat server
More on frameworks
Taking our servers forward
Chapter 9 : Applications for the Web
What's in a web server?
Python and the Web
Web frameworks
Flask - a microframework
Templating
Other templating engines
Adding some style
A note on security
XSS
CSRF
Finishing up with frameworks
Hosting Python web applications
CGI
Recycling for a better world
WSGI
Hosting in practice
Appendix: Working with Wireshark
Packet sniffers
Wireshark
Installation
Capturing some packets.
Filtering
Inspecting packets
A versatile tool
Index.
Notes:
Includes index.
Description based on online resource; title from PDF title page (ebrary, viewed July 2, 2015).
OCLC:
915143466

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account