blob: e2cbaa2fbf2a4b6722cb8d757dde06f9e1b23c6e [file] [log] [blame]
Fred Drake295da241998-08-10 19:42:37 +00001\section{\module{gopherlib} ---
2 Gopher protocol client.}
Fred Drakeb91e9341998-07-23 17:59:49 +00003\declaremodule{standard}{gopherlib}
4
5\modulesynopsis{Gopher protocol client (requires sockets).}
6
Fred Drake1566a1d1998-01-07 13:17:20 +00007\indexii{Gopher}{protocol}
Guido van Rossum86751151995-02-28 17:14:32 +00008
Guido van Rossum86751151995-02-28 17:14:32 +00009
Guido van Rossumcca8d2b1995-03-22 15:48:46 +000010This module provides a minimal implementation of client side of the
11the Gopher protocol. It is used by the module \code{urllib} to handle
12URLs that use the Gopher protocol.
13
14The module defines the following functions:
15
Fred Drake1566a1d1998-01-07 13:17:20 +000016\begin{funcdesc}{send_selector}{selector, host\optional{, port}}
Guido van Rossumcca8d2b1995-03-22 15:48:46 +000017Send a \var{selector} string to the gopher server at \var{host} and
Fred Drake1566a1d1998-01-07 13:17:20 +000018\var{port} (default \code{70}). Returns an open file object from
19which the returned document can be read.
Guido van Rossumcca8d2b1995-03-22 15:48:46 +000020\end{funcdesc}
21
Fred Drake1566a1d1998-01-07 13:17:20 +000022\begin{funcdesc}{send_query}{selector, query, host\optional{, port}}
Guido van Rossumcca8d2b1995-03-22 15:48:46 +000023Send a \var{selector} string and a \var{query} string to a gopher
Fred Drake1566a1d1998-01-07 13:17:20 +000024server at \var{host} and \var{port} (default \code{70}). Returns an
25open file object from which the returned document can be read.
Guido van Rossumcca8d2b1995-03-22 15:48:46 +000026\end{funcdesc}
27
28Note that the data returned by the Gopher server can be of any type,
29depending on the first character of the selector string. If the data
30is text (first character of the selector is \samp{0}), lines are
31terminated by CRLF, and the data is terminated by a line consisting of
32a single \samp{.}, and a leading \samp{.} should be stripped from
Fred Drake1566a1d1998-01-07 13:17:20 +000033lines that begin with \samp{..}. Directory listings (first character
Guido van Rossumcca8d2b1995-03-22 15:48:46 +000034of the selector is \samp{1}) are transferred using the same protocol.