万本电子书0元读

万本电子书0元读

顶部广告

Learning Python Network Programming电子书

售       价:¥

6人正在读 | 0人评论 9.8

作       者:Dr. M. O. Faruque Sarker

出  版  社:Packt Publishing

出版时间:2015-06-17

字       数:242.0万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
If you're a Python developer or a system administrator with Python experience and you're looking to take your first steps in network programming, then this book is for you. Basic knowledge of Python is assumed.
目录展开

Learning Python Network Programming

Table of Contents

Learning Python Network Programming

Credits

About the Authors

About the Reviewers

www.PacktPub.com

Support files, eBooks, discount offers, and more

Why subscribe?

Free access for Packt account holders

Preface

What this book covers

What you need for this book

Virtual environments

Installing Python 3

Ubuntu and Debian

RHEL, CentOS, Scientific Linux

Fedora

Alternative installation methods

Pythonz

JuJu

Windows

Other requirements

Who this book is for

Conventions

Reader feedback

Customer support

Downloading the example code

Errata

Piracy

Questions

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

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

Summary

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

Summary

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

Summary

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

Summary

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 communication

NTP clients

Inspecting the NTP client/server communication

Summary

7. Programming with Sockets

Basics of sockets

Working with TCP sockets

Inspecting the client/server communication

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

Summary

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

Summary

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

Event-driven servers

WSGI

Hosting in practice

Summary

A. Working with Wireshark

Packet sniffers

Wireshark

Installation

Capturing some packets

Filtering

Inspecting packets

A versatile tool

Index

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部