新書推薦:
《
你当我好骗吗?
》
售價:NT$
550.0
《
跨代伴侣治疗
》
售價:NT$
440.0
《
精华类化妆品配方与制备手册
》
售價:NT$
990.0
《
经纬度丛书:出祁山:诸葛亮北伐得与失
》
售價:NT$
440.0
《
心理治疗中的真意:心理治疗师的心灵之旅
》
售價:NT$
440.0
《
心理咨询与治疗技术经典入门(第3版)
》
售價:NT$
650.0
《
无冕之王:齐桓公与齐国崛起
》
售價:NT$
290.0
《
中国涉外法治蓝皮书(2024)
》
售價:NT$
484.0
|
編輯推薦: |
《Linux网络编程Python》立足开源Linux系统,选用系统运维的常用语言Python阐述TCPIP协议簇、Socket等编程原理,讲解并例示HTTP、FTP、E-mail、Web APP、Web框架等系统运维实例,并结合多线程和数据库技术完善与增强应用实例的功能。本书全部代码可在GITHUB下载。
|
內容簡介: |
本书选用各项性能指标优良的Ubuntu作为Linux系统实例,以Python为编程语言,理论结合实践,系统地讲解网络各层次的功能、所包含的常用协议、数据报文格式,并给出实际操作的程序实例。本书包括Linux系统介绍、Python语言基础、TCPIP协议簇、Socket原理、进程和线程、网络应用程序实例、Web应用程序开发等内容。本书内容也适用于其他版本的Linux。 本书可作为普通高等院校信息类专业本科生和研究生教材,也可作为广大Linux用户、网络管理员、程序员的自学用书和参考手册。
|
目錄:
|
目录
第1章Linux系统介绍
1.1Linux的诞生
1.2Linux的特点
1.3Linux的组成
1.4Linux的应用
1.5常见Linux发行版本
1.6Linux的安装
1.6.1常用的安装方式
1.6.2安装前的准备
1.6.3虚拟机安装Linux
1.6.4多操作系统的安装
1.7本章小结
习题
第2章Python语言基础
2.1Python语言简介
2.2Python语言解释器安装
2.2.1在线安装
2.2.2下载安装
2.2.3管理多个Python版本
2.2.4安装Python的IDE环境
2.2.5测试Python IDE
2.3数据类型
2.3.1布尔型
2.3.2整型
2.3.3浮点型
2.3.4复数型
2.3.5字符串型
2.3.6列表型
2.3.7元组型
2.3.8字典型
2.3.9日期型
2.3.10数组型
2.4语法规则与语句
2.4.1输出与输入
2.4.2条件判断
2.4.3循环
2.5函数与模块
2.5.1自定义函数
2.5.2默认参数
2.5.3可变参数
2.5.4关键字参数
2.5.5命名关键字参数
2.5.6参数组合规则
2.5.7实参与形参
2.5.8递归
2.5.9模块
2.6类与对象
2.6.1类的定义与实例化对象
2.6.2类属性与实例属性
2.6.3属性封装
2.6.4类的继承
2.6.5多态
2.7异常和异常处理
2.7.1异常捕获与处理
2.7.2抛出异常
2.8文件
2.8.1读写文本文件
2.8.2读写二进制文件
2.8.3读写JSON
2.8.4读写StringIO
2.8.5读写BytesIO
2.9本章小结
习题
第3章TCPIP协议簇
3.1TCPIP协议簇介绍
3.2链路层
3.3网络层
3.3.1IPv4
3.3.2IPv6
3.3.3网络层协议
3.3.4获取计算机IP地址实例
3.3.5获取局域网网关地址实例
3.4传输层
3.4.1UDP
3.4.2TCP
3.4.3主机收发数据统计信息程序实例
3.5应用层
3.5.1HTTP
3.5.2HTTPS
3.5.3FTP
3.5.4DNS
3.5.5SMTP
3.5.6POP3
3.5.7DHCP
3.6本章小结
习题
第4章Socket
4.1Socket介绍
4.2SOCK_STREAM
4.2.1字符串转换实例
4.2.2文件下载实例
4.2.3扫描主机端口实例
4.3SOCK_DGRAM
4.3.1获取服务器CPU使用情况实例
4.3.2获取服务器内存使用情况实例
4.4SOCK_RAW
4.4.1ICMP报文
4.4.2ICMP报文校验和计算
4.4.3数据转换为bytes格式
4.4.4探测主机是否在线实例
4.4.5网络嗅探实例
4.5本章小结
习题
第5章进程与线程
5.1进程与线程介绍
5.2多进程编程
5.2.1多进程文件下载服务实例
5.2.2进程池扫描主机端口实例
5.2.3多进程返回服务器负载情况实例
5.3多线程编程
5.3.1多线程文件下载服务实例
5.3.2线程池扫描主机端口实例
5.4socketserver
5.4.1多进程TCP实例
5.4.2多进程UDP实例
5.4.3多线程TCP与多线程UDP
5.5GUI聊天室实例
5.5.1Tkinter
5.5.2服务器端程序
5.5.3客户端程序
5.5.4程序运行结果
5.6本章小结
习题
第6章网络应用程序实例
6.1网页内容获取
6.1.1通过API获取天气数据实例
6.1.2正则表达式
6.1.3通过爬虫获取天气数据实例
6.1.4通过爬虫下载网页中的图片实例
6.1.5爬虫获取需要验证用户身份的网站信息实例
6.1.6爬虫获取使用HTTPS网站信息实例
6.2访问FTP服务器
6.2.1搭建FTP服务器
6.2.2访问FTP服务器的常用函数
6.2.3访问FTP服务器程序实例
6.3访问DNS
6.3.1DNS记录类型
6.3.2访问DNS程序实例
6.4收发Email
6.4.1设置QQ邮箱授权码
6.4.2简单邮件发送实例
6.4.3HTML格式邮件发送实例
6.4.4带附件的邮件发送实例
6.4.5带图片的邮件发送实例
6.4.6邮件接收实例
6.5获取DHCP信息
6.5.1Scapy简介及安装
6.5.2获取DHCP信息程序实例
6.6本章小结
习题
第7章Web应用程序开发
7.1WSGI
7.2Django
7.2.1Django安装与配置
7.2.2SQLite3数据库
7.2.3向客户端回应简单信息
7.2.4向客户端回应HTML文件
7.2.5模板标签
7.2.6框架实例
7.3本章小结
习题
参考文献
|
內容試閱:
|
前言
Linux系统与互联网相伴而生,共同成长,成为现代信息技术高速发展的重要支撑和驱动力。Python作为一种开源、跨平台、面向对象的新型计算机程序设计语言,语法简洁,语义清晰,有丰富、强大的库的支持,广泛应用在网络编程、科学计算、人工智能等各个领域。两者的结合能够使读者快速理解基础理论,掌握实践技能,提高学习和工作的效率。
本书选用Ubuntu Desktop为实践平台,以Python语言为编程工具,针对互联网所使用的TCPIP协议簇进行分层介绍和解析,并给出实际操作的程序实例。
全书共分为7章。第1章介绍Linux的历史、特点、组成、常见发行版本以及Linux常用的各种安装方式,由马栋林编写。第2章讲解Python语言的特点、开发环境安装、数据类型、语法规则、语句、函数、模块、类、对象、异常、文件等内容,由赵宏编写。第3章分层讲解TCPIP各层主要协议、数据报文格式、层间数据交换规则、常见网络应用与各层协议的对应、程序实例等内容,由包广斌编写。第4章讲解Socket原理、SOCK_STREAM、SOCK_DGRAM、SOCK_RAW等内容,并通过程序实例演示Socket在CS结构编程和网络嗅探中的实际应用,由赵宏和马栋林编写。第5章讲解多进程和多线程技术在网络编程中的应用,通过实例对比多进程与多线程实现方案的异同,并介绍了利用socketserver编写多进程和多线程程序的方法,最后通过GUI聊天室程序实例说明了多进程和多线程编程技术的实际应用,由包广斌和赵宏编写。第6章讲解网页内容获取、访问FTP服务器、访问DNS、收发Email、获取DHCP信息等实用程序的编写方法与过程,这些实例能够让读者进一步理解网络理论和工具软件的运行机制,由赵宏和包广斌编写。第7章介绍Python开发Web应用程序的方法,讲解WSGI工作原理,以流行的Web开发框架Django为例,演示Web应用程序开发工程,由赵宏和马栋林编写。
本书在编写过程中,得到兰州理工大学计算机与通信学院和信息中心各位老师的支持。硕士研究生韩泽宇、蒋家俊、张浩和王孝通帮助调试本书部分代码。
本书的编写受到兰州理工大学教学研究项目和CERNET下一代互联网技术项目NGII20160311,NGII20160112的资助。
因时间仓促,不足在所难免,请大家批评指正,读者可通过zhaoh@lut.edu.cn或594286500@qq.com与作者联系,也可以加入本书的QQ群643116956进行讨论。
为方便教学,作者开发了与本书相配套的多媒体课件、课后习题答案和程序代码,读者可扫描封底课件二维码下载或者向编者索取。
作者
2018年6月于兰州理工大学
|
|