内容紹介
Pythonによるネットワークプログラミング入門書!
本書は、Pythonによる実装を前提として、ソケットプログラミングに必要な知識をわかりやすく解説する入門書です。TCP/IPやソケットの原理を説明したのち、Pythonでソケットを実装する基礎的方法を示していきます。さらに、Python固有の機能を用いたプログラミング例(モジュールを利用したサーバ実装など)を紹介します。
ダウンロードできるサンプルプログラムが多数掲載されているので、実際に試しながら読み進めて、知識と技術を身につけてください。
【本書の基本環境】
本書は、Windows・Annaconda・Python3の使用を基本としています。
しかし、使用しているモジュールはごく標準的であるため、それ以外の環境でも、本書で使用しているプログラムは問題なく動作すると考えられます。
【本書内で使用するPythonモジュール】
- socket
- sys
- datetime
- threading
- os
- time
- http.server
- webbrowser
- urllib
- HtmlParser
このような方におすすめ
◎ネットワークプログラミングを学ぶ情報系の学生
〇ネットワークプログラミングを学ぶ、あるいは実装を目指すプログラマ
目次
主要目次
Chapter 1 TCP/IPとソケットの基礎
Chapter 2 Pythonソケットプログラミング
Chapter 3 Pythonソケットによるネットワークシステムの構築
Chapter 4 Webシステムに関連するPythonモジュールの活用
Appendix
詳細目次
PREFACE
Chapter 1 TCP/IPとソケットの基礎
1.1 TCP/IPの概念
1.1.1 ネットワークプロトコルとネットワークアーキテクチャ
1.1.2 OSI参照モデル
1.1.3 OSI参照モデルとTCP/IP
1.1.4 IPの概要
1.1.5 TCPとUDP
1.2 ソケットとは
1.2.1 ソケットの概要
1.2.2 ソケットによるクライアントサーバシステムの構築
演習問題1
Chapter 2 Pythonソケットプログラミング
2.1 Pythonの処理系について
2.1.1 Python処理系の準備
2.1.2 Anaconda Promptの利用
2.2 クライアントソケットの実装
2.2.1 クライアントソケットの基本
2.2.2 双方向に情報をやり取りするクライアントプログラムの実装
2.3 サーバソケットの実装
2.3.1 シングルスレッドによるサーバソケットの実装
2.3.2 マルチスレッドによるサーバソケットの実装
演習問題2
Chapter 3 Pythonソケットによるネットワークシステムの構築
3.1 【データロガーシステム】TCPの利用
3.1.1 上位プロトコルの必要性
3.1.2 【データロガーの実装①】 サーバの実装
3.1.3 【データロガーの実装②】 クライアントの実装
3.2 【チャットシステム】UDPの利用
3.2.1 UDPを用いたチャットシステムの設計
3.2.2 【UDPチャットの実装①】サーバの実装
3.2.3 【UDPチャットの実装②】クライアントの実装
演習問題3
Chapter 4 Webシステムに関連するPythonモジュールの活用
4.1 HTTPのしくみ
4.1.1 HTTPとHTML
4.1.2 HTTPによる情報交換の基本
4.1.3 Webアプリケーションのしくみ
4.2 Webサーバの構築
4.2.1 Webサーバの動作原理
4.2.2 SimpleHTTPServerによるサーバの構築
4.3 Webクライアントの構築
4.3.1 webbrowserによるWebページの表示
4.3.2 urllibによるデータの取得
4.3.3 HtmlParserによる特定の情報の抽出
演習問題4
Appendix
A 2進数
B ipconfigコマンド
演習問題 解答
INDEX
続きを見る