# 8 `gopherlib` -- gopher プロトコルのクライアント

このモジュールでは、gopher プロトコルのクライアント側について最小限の 実装を提供しています。このモジュールは `urllib` モジュールで gopher プロトコルを使う URL を扱うために用いられます。

このモジュールでは以下の関数を定義しています:

`send_selector`( | selector, host[, port])

  selector 文字列を host および port (標準の値は `70` です) の gopher サーバに送信します。 返信されたドキュメントデータを読み出すための、開かれた状態のファイル オブジェクトを返します。

`send_query`( | selector, query, host[, port])

  selector 文字列、および query 文字列を host および port (標準の値は `70` です) の gopher サーバに送信します。 返信されたドキュメントデータを読み出すための、開かれた状態のファイル オブジェクトを返します。

gopher サーバから返されるデータは任意の形式であり、セレクタ (selector) 文字列の最初の文字に依存するので注意してください。データがテキスト (セレクタの最初の文字が "`0`") の場合、各行は CRLF で終端 され、データ全体は "`.`" 一個だけからなる行で終端されます。 "`..`" で始まる行の先頭は "`.`" に置き換えられます。 ディレクトリリスト (セレクタの最初の文字が "`1`") の場合にも、 同じプロトコルで転送されます。