本文整理汇总了Python中twisted.web.client.HTTPClientFactory类的典型用法代码示例。如果您正苦于以下问题:Python HTTPClientFactory类的具体用法?Python HTTPClientFactory怎么用?Python HTTPClientFactory使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了HTTPClientFactory类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
def __init__(self, temp_token, log):
self.temp_token = temp_token
self.log = log
self.url = "https://www.google.com/accounts/AuthSubSessionToken"
"""
self.keyfile = aztk_config.services.get('servers.httpserver', "google_ssl_priv_key")
self.log.debug("keyfile: [%s]" % self.keyfile)
self.passphrase = aztk_config.services.get('servers.httpserver', "google_ssl_priv_passphrase")
self.time_stamp = int(time.time())
self.rand_num = str(getrandbits(64))
self.data = "GET %s %s %s" % (self.url, self.time_stamp, self.rand_num)
"""
#self.make_sig()
header_dict = {
'Accept': "*/*",
#'Authorization': str("AuthSub token=\"%s\" data=\"%s\" sig=\"%s\" sigalg=\"rsa-sha1\"" % (self.temp_token, self.data, self.sig)),
'Authorization': "AuthSub token=\"%s\"" % (self.temp_token),
'Content-Type': "application/x-www-form-urlencoded"
}
self.log.debug("header_dict:\n%s" % pformat(header_dict))
HTTPClientFactory.__init__(self, self.url, headers=header_dict, agent="Zoto/3.0.1")
self.deferred.addCallback(self.handle_response)
self.deferred.addErrback(self.handle_error)
self.perm_token = ""
self.expire_time = ""
示例2: getPage
def getPage(url, bindAddress = None, *arg, **kw):
# reimplemented here to insert bindAddress
# _parse() deprecated in twisted 13.1.0 in favor of the _URI class
if hasattr(client, '_parse'):
scheme, host, port, path = client._parse(url)
else:
# _URI class renamed to URI in 15.0.0
try:
from twisted.web.client import _URI as URI
except ImportError:
from twisted.web.client import URI
uri = URI.fromBytes(url)
scheme = uri.scheme
host = uri.host
port = uri.port
path = uri.path
factory = HTTPClientFactory(url, *arg, **kw)
factory.noisy = False
if scheme == 'https':
from twisted.internet import ssl
context = ssl.ClientContextFactory()
reactor.connectSSL(host, port, factory, context,
bindAddress = bindAddress)
else:
reactor.connectTCP(host, port, factory, bindAddress = bindAddress)
return factory.deferred
示例3: __init__
def __init__(self, url, contextFactory=None, retries=0):
url = stripNoPrint(url)
if retries > 0:
print "Retrying: ", url
else:
print "Get: ", url
self.retries = retries
self.url = url
self.charset = None
scheme, host, port, path = _parse(url)
HTTPClientFactory.__init__(self, url,
method='GET', postdata=None, headers=None,
agent='Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US;' +
' rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10')
if scheme == 'https':
from twisted.internet import ssl
if contextFactory is None:
contextFactory = ssl.ClientContextFactory()
reactor.connectSSL(host, port, self, contextFactory)
else:
reactor.connectTCP(host, port, self)
self.deferred.addCallbacks(self.getCharset, self.Err)
self.deferred.addCallbacks(self.getTitle, self.Err)
示例4: __init__
def __init__(self, url):
HTTPClientFactory.__init__(self, url)
self.deferred = defer.Deferred()
self.waiting = 1
self.on_page_part = Event()
self.on_page_end = Event()
示例5: __init__
def __init__(self, user, password, callback, stream_type='spritzer', agent='TwitterHooks', query_params=None):
url = 'http://stream.twitter.com/%s.json' % stream_type
if query_params:
url = '%s?%s' % (url, urllib.urlencode(query_params))
self.auth = base64.b64encode('%s:%s' % (user, password))
self.callback = callback
self.last_retry = 0
HTTPClientFactory.__init__(self, url=url, agent=agent)
示例6: __init__
def __init__(self, cacheDir, url, method='GET', postdata=None, headers={}, agent="Gazouilleur with Twisted ConditionalPageGetter", timeout=0, cookies=None, followRedirect=True, redirectLimit=5):
self.cachefile = path.join(cacheDir, get_hash(url))
self.last_modified = None
if path.exists(self.cachefile):
with open(self.cachefile) as cache:
self.last_modified = cache.readline().strip()
headers['If-Modified-Since'] = self.last_modified
HTTPClientFactory.__init__(self, url, method=method, postdata=postdata, headers=headers, agent=agent, timeout=timeout, cookies=cookies, followRedirect=followRedirect, redirectLimit=redirectLimit)
示例7: __init__
def __init__(self, url, proxy_host, proxy_port, *args, **kwargs):
"""
Strips out proxy_host and proxy_port, then passes the rest of the
arguments to base class (HTTPClientFactory)
"""
self.proxy_host = proxy_host
self.proxy_port = proxy_port
HTTPClientFactory.__init__(self, url, *args, **kwargs)
示例8: __init__
def __init__(self, **kwargs):
self.reqs = kwargs.pop('requests')
self.report = kwargs.pop('report')
self.ip = kwargs.pop('ip')
self.host_port = kwargs.pop('port')
if 'auth' in kwargs:
self.protocol.auth = kwargs.pop('auth')
self.activecons = 0
self.total_reqs = len(self.reqs)
HTTPClientFactory.__init__(self, timeout=15, **kwargs)
示例9: __init__
def __init__(self, *args, **kwds):
HTTPClientFactory.__init__(self, *args, **kwds)
if self.url in self.cache:
if 'etag' in self.cache[self.url]:
self.headers['etag'] = self.cache[self.url]['etag']
elif 'last-modified' in self.cache[self.url]:
self.headers['if-modified-since'] = self.cache[self.url]['last-modified']
elif 'date' in self.cache[self.url]:
self.headers['if-modified-since'] = self.cache[self.url]['date']
示例10: __init__
def __init__(self, frob, log):
self.frob = frob
self.log = log
self.sig = md5.md5("%sapi_key%sfrob%smethodflickr.auth.getToken" % (SECRET, API_KEY, self.frob)).hexdigest()
url = "http://api.flickr.com/services/rest/?method=flickr.auth.getToken&api_key=%s&frob=%s&api_sig=%s" % (API_KEY, self.frob, self.sig)
self.log.debug("url: %s" % url)
HTTPClientFactory.__init__(self, url, agent="Zoto/3.0.1")
self.deferred.addCallback(self.handle_response)
self.deferred.addErrback(self.handle_error)
self.token = None
示例11: __call__
def __call__(self):
HTTPClientFactory.__init__(self, self.page_url,
method=self.method, agent=self.agent,
timeout=self.defaults.interval)
BaseMonitor.__call__(self)
# this deferred is created above when
# HTTPClientFactory.__init__() is called.
d = self.deferred
d.addCallback(self.logStatus)
d.addErrback(self.errorHandlerPartialPage)
d.addErrback(self.errorHandlerTimeout)
示例12: send_json
def send_json(url, **kw):
qurl =url+'?'+urlencode(kw.get('postdata', {}))
# debug(0,'URLSTATS: %s',qurl)
factory = HTTPClientFactory(str(qurl))
factory.noisy = False
if url.startswith('http://'):
reactor.connectTCP(factory.host, factory.port, factory)
elif url.startswith('https://'):
reactor.connectSSL(factory.host, factory.port, factory,
ssl.ClientContextFactory())
else:
raise Exception('Url error: %s' %url)
return factory
示例13: flush
def flush(self):
scheme, host, port, path = _parse(self.url)
factory = HTTPClientFactory(self.url, method='POST', postdata=self._buffer.getvalue())
factory.noisy = False
if scheme == 'https':
from twisted.internet import ssl
contextFactory = ssl.ClientContextFactory()
reactor.connectSSL(host, port, factory, contextFactory)
else:
reactor.connectTCP(host, port, factory)
factory.deferred.addCallbacks(self._handle, self._error)
self._buffer = StringIO()
示例14: _gotConn
def _gotConn(self, conn, url):
factory = HTTPClientFactory(url, **kwargs)
print "!!", transport
adr = None
p = factory.buildProtocol(adr)
p.makeConnection(transport)
def nest(x):
print "!!"
self._returnConn(transport)
de.callback(x)
factory.deferred.callback(nest)
示例15: getPage
def getPage(url, contextFactory=None, *args, **kwargs):
url = str(url)
scheme, host, port, path = _parse(url)
factory = HTTPClientFactory(url, *args, **kwargs)
if False: # use a proxy
host, port = 'proxy', 6060
factory.path = url
if scheme == 'https':
from twisted.internet import ssl
if contextFactory is None:
contextFactory = ssl.ClientContextFactory()
reactor.connectSSL(host, port, factory, contextFactory)
else:
reactor.connectTCP(host, port, factory)
return factory.deferred