×
图文详情
  • ISBN:9787115433503
  • 装帧:暂无
  • 册数:暂无
  • 重量:暂无
  • 开本:32开
  • 页数:345
  • 出版时间:2016-09-01
  • 条形码:9787115433503 ; 978-7-115-43350-3

本书特色

本书针对想要深入理解使用python来解决网络相关问题或是构建网络应用程序的技术人员,结合实例讲解了网络协议、网络数据及错误、电子邮件、服务器架构和http及web应用程序等经典话题。具体内容包括:全面介绍python3中新提供的ssl支持,异步i/o循环的编写,用flask框架在python代码中配置url,跨站脚本以及跨站请求伪造攻击网站的原理及保护方法,等等。

内容简介

本书采用python 3,涵盖网络编程所有经典话题,包括网络协议、网络数据及错误、电子邮件、服务器架构,以及http及web应用程序,对新的ssl支持、异步i/o循环的编写方法、跨站脚本以及跨站请求伪造攻击网站的原理及保护方法等内容也有详尽介绍。 本书既适合想要深入理解使用python来解决网络相关的问题或是构建网络应用程序的python程序员,也适合所有web应用程序开发人员、系统集成者或系统管理员。 

目录

第1章 客户端/服务器网络编程简介  11.1 基础:协议栈与库  11.2 应用层  41.3 协议的使用  51.4 一个原始的网络会话  61.5 层层深入  81.6 编码与解码  91.7 网际协议  101.8 ip地址  111.9 路由  121.10 数据包分组  131.11 进一步学习ip  141.12 小结  15第2章 udp  162.1 端口号  172.2 套接字  182.2.1 混杂客户端与垃圾回复  222.2.2 不可靠性、退避、阻塞和超时  232.2.3 连接udp套接字  272.2.4 请求id:好主意  282.3 绑定接口  292.4 udp分组  312.5 套接字选项  332.6 广播  332.7 小结  35第3章 tcp  373.1 tcp工作原理  373.2 何时使用tcp  383.3 tcp套接字的含义  393.4 一个简单的tcp客户端和服务器  403.4.1 每个会话使用一个套接字  433.4.2 地址已被占用  443.5 绑定接口  463.6 死锁  463.7 已关闭连接,半开连接  513.8 像使用文件一样使用tcp流  523.9 小结  53第4章 套接字名与dns  544.1 主机名与套接字  544.1.1 套接字的5个坐标  554.1.2 ipv6  564.2 现代地址解析  574.2.1 使用getaddrinfo()为服务器绑定端口  584.2.2 使用getaddrinfo()连接服务  594.2.3 使用getaddrinfo()请求规范主机名  604.2.4 其他getaddrinfo()标记  614.2.5 原始的名称服务程序  624.2.6 在代码中使用getsockaddr()  624.3 dns协议  644.3.1 为何不使用原始dns  664.3.2 使用python进行dns查询  664.3.3 解析邮箱域名  684.4 小结  70第5章 网络数据与网络错误  715.1 字节与字符串  715.1.1 字符串  725.1.2 二进制数与网络字节顺序  755.2 封帧与引用  775.3 pickle与自定义定界符的格式  825.4 xml与json  835.5 压缩  845.6 网络异常  855.6.1 抛出更具体的异常  875.6.2 捕捉与报告网络异常  875.7 小结  88第6章 tls/ssl  906.1 tls无法保护的信息  906.2 可能出问题的地方  916.3 生成证书  936.4 tls负载移除  956.5 python 3.4默认上下文  966.6 手动选择加密算法与完美前向安全  1026.7 支持tls的协议  1046.8 了解细节  1056.9 小结  111第7章 服务器架构  1127.1 浅谈部署  1127.2 一个简单的协议  1147.3 单线程服务器  1177.4 多线程与多进程服务器  1207.5 异步服务器  1227.5.1 回调风格的asyncio  1267.5.2 协程风格的asyncio  1277.5.3 遗留模块asyncore  1297.5.4 两全其美的方法  1307.6 在inetd下运行  1317.7 小结  133第8章 缓存与消息队列  1348.1 使用memcached  1348.2 散列与分区  1378.3 消息队列  1408.4 小结  145第9章 http客户端  1479.1 python客户端库  1479.2 端口、加密与封帧  1499.3 方法  1519.4 路径与主机  1529.5 状态码  1529.6 缓存与验证  1559.7 传输编码  1579.8 内容协商  1589.9 内容类型  1609.10 http认证  1609.11 cookie  1629.12 连接、keep-alive和httplib  1639.13 小结  164第10章 http服务器  16610.1 wsgi  16610.2 异步服务器与框架  16810.3 前向代理与反向代理  16910.4 4种架构  17010.4.1 在apache下运行python  17110.4.2 纯粹的python http服务器的兴起  17210.4.3 反向代理的优势  17210.5 平台即服务  17310.6 get与post模式和rest的问题  17410.7 不使用web框架编写wsgi可调用对象  17610.8 小结  180第11章 万维网  18111.1 超媒体与url  18111.1.1 解析与构造url  18211.1.2 相对url  18411.2 超文本标记语言  18611.3 读写数据库  18911.4 一个糟糕的web应用程序(使用flask)  19011.5 表单和http方法  19511.5.1 表单使用了错误方法的情况  19711.5.2 安全的cookie与不安全的cookie  19811.5.3 非持久型跨站脚本  20011.5.4 持久型跨站脚本  20111.5.5 跨站请求伪造  20211.5.6 改进的应用程序  20311.6 使用django编写的账单应用程序  20511.7 选择web框架  20911.8 websocket  21011.9 网络抓取  21111.9.1 获取页面  21211.9.2 抓取页面  21511.9.3 递归抓取  21711.10 小结  221第12章 电子邮件的构造与解析  22212.1 电子邮件消息格式  22212.2 构造电子邮件消息  22412.3 添加html与多媒体  22612.4 添加内容  23112.5 解析电子邮件消息  23212.6 遍历mime部件  23412.7 邮件头编码  23612.8 解析日期  23712.9 小结  238第13章 smtp  23913.1 电子邮件客户端与web邮件服务  23913.1.1 *开始使用命令行发送电子邮件  23913.1.2 客户端的兴起  24013.1.3 转移到web邮件  24113.2 smtp的使用方法  24313.2.1 发送电子邮件  24413.2.2 邮件头与信封接收者  24513.2.3 多跳  24613.3 smtp库简介  24713.4 错误处理与会话调试  24813.5 从ehlo获取信息  25113.6 使用安全套接层和传输层安全协议  25313.7 认证的smtp  25513.8 关于smtp的小贴士  25713.9 小结  257第14章 pop  25814.1 pop服务器的兼容性  25814.2 连接与认证  25914.3 获取邮箱信息  26114.4 消息的下载与删除  26314.5 小结  265第15章 imap  26615.1 在python中使用imap  26715.1.1 imapclient  26915.1.2 查看文件夹  27115.1.3 消息号与uid  27215.1.4 消息范围  27215.1.5 摘要信息  27215.1.6 下载整个邮箱  27415.1.7 单独下载消息  27615.1.8 标记并删除消息  28115.1.9 删除消息  28215.1.10 搜索  28215.1.11 操作文件夹与消息  28415.1.12 异步性  28515.2 小结  285第16章 telnet和ssh  28616.1 命令行自动化  28616.1.1 命令行扩展与引用  28716.1.2 unix命令行参数几乎可以包含任意字符  28816.1.3 对字符进行引用  29016.1.4 糟糕的windows命令行  29116.1.5 终端的特别之处  29216.1.6 终端的缓冲行为  29516.2 telnet  29616.3 ssh:安全shell  30016.3.1 ssh概述  30016.3.2 ssh主机密钥  30116.3.3 ssh认证  30316.3.4 shell会话与独立命令  30416.3.5 sftp:通过ssh进行文件传输  30816.3.6 其他特性  31016.4 小结  311第17章 ftp  31317.1 何时不使用ftp  31317.1.1 通信信道  31417.1.2 在python中使用ftp  31517.1.3 ascii和二进制文件  31617.1.4 二进制下载进阶功能介绍  31817.1.5 上传数据  31917.1.6 二进制上传进阶功能介绍  32017.1.7 错误处理  32117.1.8 目录扫描  32217.1.9 目录检测以及递归下载  32417.1.10 目录的创建以及文件和目录的删除  32617.1.11 安全地操作ftp  32617.2 小结  326第18章 rpc  32818.1 rpc的特性  32918.1.1 xml-rpc  33018.1.2 json-rpc  33618.1.3 自文档的数据  33918.1.4 关于对象:pyro和rpyc  34018.1.5 rpyc例子  34118.1.6 rpc、web框架和消息队列  34318.1.7 从网络错误中恢复  34418.2 小结  344
展开全部

相关资料

“这本书行文清晰、可读性强,尤其可贵的是,其中包含许多使用python 3的示例讲解。书中介绍了python在一些基本网络服务中的使用,例如http、dns、imap、pop和ftp,非常具有实用性。” ——亚马逊英文网站读者评论

作者简介

Brandon Rhodes Dropbox工程师,*早的Python程序员之一,热心于传播Python,经常在各类Python主题大会上演讲。   John Goerzen eFolder公司IT与工程部副总裁,同时也是具有影响力的作家、系统管理者和Python程序员,自1996年起就是Debian GNU/Linux操作系统开发组的成员,拥有近20年的软件开发经验。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航