예제 #1
0
	def open_gopher(self, url):
		import gopherlib
		host, selector = splithost(url)
		if not host: raise IOError, ('gopher error', 'no host given')
		type, selector = splitgophertype(selector)
		selector, query = splitquery(selector)
		selector = unquote(selector)
		if query:
			query = unquote(query)
			fp = gopherlib.send_query(selector, query, host)
		else:
			fp = gopherlib.send_selector(selector, host)
		return addinfo(fp, noheaders())
예제 #2
0
 def open_gopher(self, url):
     import gopherlib
     host, selector = splithost(url)
     if not host: raise IOError, ('gopher error', 'no host given')
     type, selector = splitgophertype(selector)
     selector, query = splitquery(selector)
     selector = unquote(selector)
     if query:
         query = unquote(query)
         fp = gopherlib.send_query(selector, query, host)
     else:
         fp = gopherlib.send_selector(selector, host)
     return addinfo(fp, noheaders())
예제 #3
0
파일: urllib.py 프로젝트: Arty-fishL/Alice
 def open_gopher(self, url):
     """Use Gopher protocol."""
     import gopherlib
     host, selector = splithost(url)
     if not host: raise IOError, ('gopher error', 'no host given')
     host = unquote(host)
     type, selector = splitgophertype(selector)
     selector, query = splitquery(selector)
     selector = unquote(selector)
     if query:
         query = unquote(query)
         fp = gopherlib.send_query(selector, query, host)
     else:
         fp = gopherlib.send_selector(selector, host)
     return addinfourl(fp, noheaders(), "gopher:" + url)
예제 #4
0
 def gopher_open(self, req):
     host = req.get_host()
     if not host:
         raise GopherError('no host given')
     host = unquote(host)
     selector = req.get_selector()
     type, selector = splitgophertype(selector)
     selector, query = splitquery(selector)
     selector = unquote(selector)
     if query:
         query = unquote(query)
         fp = gopherlib.send_query(selector, query, host)
     else:
         fp = gopherlib.send_selector(selector, host)
     return addinfourl(fp, noheaders(), req.get_full_url())
예제 #5
0
 def gopher_open(self, req):
     host = req.get_host()
     if not host:
         raise GopherError("no host given")
     host = unquote(host)
     selector = req.get_selector()
     type, selector = splitgophertype(selector)
     selector, query = splitquery(selector)
     selector = unquote(selector)
     if query:
         query = unquote(query)
         fp = gopherlib.send_query(selector, query, host)
     else:
         fp = gopherlib.send_selector(selector, host)
     return addinfourl(fp, noheaders(), req.get_full_url())
예제 #6
0
 def open_gopher(self, url):
     """Use Gopher protocol."""
     import gopherlib
     host, selector = splithost(url)
     if not host: raise IOError, ('gopher error', 'no host given')
     host = unquote(host)
     type, selector = splitgophertype(selector)
     selector, query = splitquery(selector)
     selector = unquote(selector)
     if query:
         query = unquote(query)
         fp = gopherlib.send_query(selector, query, host)
     else:
         fp = gopherlib.send_selector(selector, host)
     return addinfourl(fp, noheaders(), "gopher:" + url)
예제 #7
0
 def gopher_open(self, req):
     # XXX can raise socket.error
     import gopherlib  # this raises DeprecationWarning in 2.5
     host = req.get_host()
     if not host:
         raise GopherError('no host given')
     host = unquote(host)
     selector = req.get_selector()
     type, selector = splitgophertype(selector)
     selector, query = splitquery(selector)
     selector = unquote(selector)
     if query:
         query = unquote(query)
         fp = gopherlib.send_query(selector, query, host)
     else:
         fp = gopherlib.send_selector(selector, host)
     return addinfourl(fp, noheaders(), req.get_full_url())
예제 #8
0
 def gopher_open(self, req):
     # XXX can raise socket.error
     import gopherlib  # this raises DeprecationWarning in 2.5
     host = req.get_host()
     if not host:
         raise GopherError('no host given')
     host = unquote(host)
     selector = req.get_selector()
     type, selector = splitgophertype(selector)
     selector, query = splitquery(selector)
     selector = unquote(selector)
     if query:
         query = unquote(query)
         fp = gopherlib.send_query(selector, query, host)
     else:
         fp = gopherlib.send_selector(selector, host)
     return addinfourl(fp, noheaders(), req.get_full_url())
예제 #9
0
파일: urllib2.py 프로젝트: mcyril/ravel-ftn
"""An extensible library for opening URLs using a variety of protocols
예제 #10
0
파일: urllib.py 프로젝트: mcyril/ravel-ftn
"""Open an arbitrary URL.
예제 #11
0
"""Open an arbitrary URL.
예제 #12
0
import gopherlib

host = "gopher.spam.egg"

f = gopherlib.send_selector("1/", host)
for item in gopherlib.get_directory(f):
    print(item)

## ['0', "About Spam.Egg's Gopher Server", "0/About's Spam.Egg's
## Gopher Server", 'gopher.spam.egg', '70', '+']
## ['1', 'About Spam.Egg', '1/Spam.Egg', 'gopher.spam.egg', '70', '+']
## ['1', 'Misc', '1/Misc', 'gopher.spam.egg', '70', '+']
## ...
예제 #13
0
import gopherlib

host = "gopher.spam.egg"

f = gopherlib.send_selector("1/", host)
for item in gopherlib.get_directory(f):
    print item

## ['0', "About Spam.Egg's Gopher Server", "0/About's Spam.Egg's
## Gopher Server", 'gopher.spam.egg', '70', '+']
## ['1', 'About Spam.Egg', '1/Spam.Egg', 'gopher.spam.egg', '70', '+']
## ['1', 'Misc', '1/Misc', 'gopher.spam.egg', '70', '+']
## ...
예제 #14
0
#! /usr/bin/env python 
# High-Level Gopher Client 

import gopherlib, sys

host = sys.argv[1]
file = sys.argv[2]

f = gopherlib.send_selector(file, host)
for line in f.readlines():
	sys.stdout.write(line)
예제 #15
0
#!/usr/bin/python

import sys,gopherlib

host = sys.argv[1]
filename = sys.argv[2]

f = gopherlib.send_selector(host,filename)
for line in f.readlines():
    sys.stdout.write(line + "\n")
예제 #16
0
import gopherlib, sys

host = ""
file = ""

f = gopherlib.send_selector(file, host)

for line in f.readlines():
    sys.stdout.write(line)
#High-Level Gopher CLient - chapter 1 -gopherlivclient.py
#这个模块删除了,大家看看就好 在python3中
import gopherlib, sys

host = input("请输入地址:")
file = input("请输入文件地址:")

f = gopherlib.send_selector(file.encode(), host.encode())
for line in f.readlines():
    print(line)
예제 #18
0
     selector = path[2:]
 else:
     selector = ''
     gtype = gopherlib.A_DIRECTORY
 # Convert '%' escapes in selectors
 while '%' in selector:
     i = string.index(selector, '%')
     xx = selector[i + 1:i + 3]
     try:
         n = eval('0x' + xx)
         c = chr(n)
     except:
         c = ''
     selector = selector[:i] + c + selector[i + 3:]
 if gtype == gopherlib.A_FILE:
     f = gopherlib.send_selector(selector, host, port)
     lines = gopherlib.get_textfile(f)
     lines.append('')
     data = string.joinfields(lines, '\n')
     return '<PLAINTEXT>\n' + data
 if gtype == gopherlib.A_DIRECTORY:
     f = gopherlib.send_selector(selector, host, port)
     directory = gopherlib.get_directory(f)
     return gopher_to_html(directory)
 if gtype == gopherlib.A_HTML:
     f = gopherlib.send_selector(selector, host, port)
     lines = gopherlib.get_textfile(f)
     lines.append('')
     data = string.joinfields(lines, '\n')
     return data
 if gtype == gopherlib.A_INDEX:
예제 #19
0
파일: urllib2.py 프로젝트: mcyril/ravel-ftn
"""An extensible library for opening URLs using a variety of protocols