internet application programming notes advanced users of the urllib package can customize its behavior in almost every way imaginable this includes creating new kinds of openershandlersrequestsprotocolsetc this topic is beyond the scope of what can be covered herebut the online documentation has some further details users of python should take note that the urllib urlopen(functionwhich is in widespread useis officially deprecated in python and eliminated in python instead of using urllib urlopen()you should use urllib urlopen()which provides the same functionality as urllib request urlopen(described here xmlrpc package the xmlrpc package contains modules for implement xml-rpc servers and clients xml-rpc is remote procedure call mechanism that uses xml for data encoding and http as transport mechanism the underlying protocol is not specific to python so programs using these modules can potentially interact with programs written in other languages more information about xml-rpc can be obtained at xmlrpc com xmlrpc client (xmlrpclibthe xmlrpc client module is used to write xml-rpc clients in python this module is called xmlrpclib to operate as clientyou create an instance of serverproxyserverproxy(uri [transport [encoding [verbose [allow_none [use_datetime]]]]uri is the location of the remote xml-rpc server--for example"foo com/rpc if necessarybasic authentication information can be added to the uri using the format "username and password this information is base- encoded and put in an 'authorization:header on transport if python is configured with openssl supporthttps can also be used transport specifies factory function for creating an internal transport object used for low-level communication this argument is only used if xml-rpc is being used over some kind of connection other than http or https it is almost never necessary to supply this argument in normal use (consult the online documentation for detailsencoding specifies the encodingwhich is utf- by default verbose displays some debugging information if true allow_noneif trueallows the value none to be sent to remote servers by defaultthis is disabled because it' not universally supported use_datetime is boolean flag that if set to trueuses the datetime module to represent dates and times by defaultthis is false an instancesof serverproxy transparently exposes all the methods on the remote server the methods are accessed as attributes of for examplethis code gets the current time from remote server providing that services serverproxy( currenttime getcurrenttime( lib fl ff