当前位置: 首页>>代码示例>>Python>>正文


Python client.HTTPDownloader方法代码示例

本文整理汇总了Python中twisted.web.client.HTTPDownloader方法的典型用法代码示例。如果您正苦于以下问题:Python client.HTTPDownloader方法的具体用法?Python client.HTTPDownloader怎么用?Python client.HTTPDownloader使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在twisted.web.client的用法示例。


在下文中一共展示了client.HTTPDownloader方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_downloadTimeout

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def test_downloadTimeout(self):
        """
        If the timeout indicated by the C{timeout} parameter to
        L{client.HTTPDownloader.__init__} elapses without the complete response
        being received, the L{defer.Deferred} returned by
        L{client.downloadPage} fires with a L{Failure} wrapping a
        L{defer.TimeoutError}.
        """
        self.cleanupServerConnections = 2
        # Verify the behavior if no bytes are ever written.
        first = client.downloadPage(
            self.getURL("wait"),
            self.mktemp(), timeout=0.01)

        # Verify the behavior if some bytes are written but then the request
        # never completes.
        second = client.downloadPage(
            self.getURL("write-then-wait"),
            self.mktemp(), timeout=0.01)

        return defer.gatherResults([
            self.assertFailure(first, defer.TimeoutError),
            self.assertFailure(second, defer.TimeoutError)]) 
开发者ID:proxysh,项目名称:Safejumper-for-Desktop,代码行数:25,代码来源:test_webclient.py

示例2: test_downloadTimeoutsWorkWithoutReading

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def test_downloadTimeoutsWorkWithoutReading(self):
        """
        If the timeout indicated by the C{timeout} parameter to
        L{client.HTTPDownloader.__init__} elapses without the complete response
        being received, the L{defer.Deferred} returned by
        L{client.downloadPage} fires with a L{Failure} wrapping a
        L{defer.TimeoutError}, even if the remote peer isn't reading data from
        the socket.
        """
        self.cleanupServerConnections = 1

        # The timeout here needs to be slightly longer to give the resource a
        # change to stop the reading.
        d = client.downloadPage(
            self.getURL("never-read"),
            self.mktemp(), timeout=0.05)
        return self.assertFailure(d, defer.TimeoutError) 
开发者ID:proxysh,项目名称:Safejumper-for-Desktop,代码行数:19,代码来源:test_webclient.py

示例3: test_downloadHeaders

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def test_downloadHeaders(self):
        """
        After L{client.HTTPDownloader.deferred} fires, the
        L{client.HTTPDownloader} instance's C{status} and C{response_headers}
        attributes are populated with the values from the response.
        """
        def checkHeaders(factory):
            self.assertEqual(factory.status, b'200')
            self.assertEqual(factory.response_headers[b'content-type'][0], b'text/html')
            self.assertEqual(factory.response_headers[b'content-length'][0], b'10')
            os.unlink(factory.fileName)
        factory = client._makeGetterFactory(
            self.getURL('file'),
            client.HTTPDownloader,
            fileOrName=self.mktemp())
        return factory.deferred.addCallback(lambda _: checkHeaders(factory)) 
开发者ID:proxysh,项目名称:Safejumper-for-Desktop,代码行数:18,代码来源:test_webclient.py

示例4: test_downloadCookies

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def test_downloadCookies(self):
        """
        The C{cookies} dict passed to the L{client.HTTPDownloader}
        initializer is used to populate the I{Cookie} header included in the
        request sent to the server.
        """
        output = self.mktemp()
        factory = client._makeGetterFactory(
            self.getURL('cookiemirror'),
            client.HTTPDownloader,
            fileOrName=output,
            cookies={b'foo': b'bar'})
        def cbFinished(ignored):
            self.assertEqual(
                FilePath(output).getContent(),
                b"[('foo', 'bar')]")
        factory.deferred.addCallback(cbFinished)
        return factory.deferred 
开发者ID:proxysh,项目名称:Safejumper-for-Desktop,代码行数:20,代码来源:test_webclient.py

示例5: test_downloadRedirectLimit

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def test_downloadRedirectLimit(self):
        """
        When more than C{redirectLimit} HTTP redirects are encountered, the
        page request fails with L{InfiniteRedirection}.
        """
        def checkRedirectCount(*a):
            self.assertEqual(f._redirectCount, 7)
            self.assertEqual(self.infiniteRedirectResource.count, 7)

        f = client._makeGetterFactory(
            self.getURL('infiniteRedirect'),
            client.HTTPDownloader,
            fileOrName=self.mktemp(),
            redirectLimit=7)
        d = self.assertFailure(f.deferred, error.InfiniteRedirection)
        d.addCallback(checkRedirectCount)
        return d 
开发者ID:proxysh,项目名称:Safejumper-for-Desktop,代码行数:19,代码来源:test_webclient.py

示例6: test_downloadHeaders

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def test_downloadHeaders(self):
        """
        After L{client.HTTPDownloader.deferred} fires, the
        L{client.HTTPDownloader} instance's C{status} and C{response_headers}
        attributes are populated with the values from the response.
        """
        def checkHeaders(factory):
            self.assertEquals(factory.status, '200')
            self.assertEquals(factory.response_headers['content-type'][0], 'text/html')
            self.assertEquals(factory.response_headers['content-length'][0], '10')
            os.unlink(factory.fileName)
        factory = client._makeGetterFactory(
            self.getURL('file'),
            client.HTTPDownloader,
            fileOrName=self.mktemp())
        return factory.deferred.addCallback(lambda _: checkHeaders(factory)) 
开发者ID:kuri65536,项目名称:python-for-android,代码行数:18,代码来源:test_webclient.py

示例7: test_downloadCookies

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def test_downloadCookies(self):
        """
        The C{cookies} dict passed to the L{client.HTTPDownloader}
        initializer is used to populate the I{Cookie} header included in the
        request sent to the server.
        """
        output = self.mktemp()
        factory = client._makeGetterFactory(
            self.getURL('cookiemirror'),
            client.HTTPDownloader,
            fileOrName=output,
            cookies={'foo': 'bar'})
        def cbFinished(ignored):
            self.assertEqual(
                FilePath(output).getContent(),
                "[('foo', 'bar')]")
        factory.deferred.addCallback(cbFinished)
        return factory.deferred 
开发者ID:kuri65536,项目名称:python-for-android,代码行数:20,代码来源:test_webclient.py

示例8: test_downloadRedirectLimit

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def test_downloadRedirectLimit(self):
        """
        When more than C{redirectLimit} HTTP redirects are encountered, the
        page request fails with L{InfiniteRedirection}.
        """
        def checkRedirectCount(*a):
            self.assertEquals(f._redirectCount, 7)
            self.assertEquals(self.infiniteRedirectResource.count, 7)

        f = client._makeGetterFactory(
            self.getURL('infiniteRedirect'),
            client.HTTPDownloader,
            fileOrName=self.mktemp(),
            redirectLimit=7)
        d = self.assertFailure(f.deferred, error.InfiniteRedirection)
        d.addCallback(checkRedirectCount)
        return d 
开发者ID:kuri65536,项目名称:python-for-android,代码行数:19,代码来源:test_webclient.py

示例9: attemptRequestWithMaliciousMethod

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def attemptRequestWithMaliciousMethod(self, method):
        """
        Attempt a request with the provided method.

        @param method: L{MethodInjectionTestsMixin}
        """
        client.HTTPDownloader(
            b"https://twisted.invalid",
            io.BytesIO(),
            method=method,
        ) 
开发者ID:wistbean,项目名称:learn_python3_spider,代码行数:13,代码来源:test_webclient.py

示例10: attemptRequestWithMaliciousURI

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def attemptRequestWithMaliciousURI(self, uri):
        """
        Attempt a request with the provided URI.

        @param uri: L{URIInjectionTestsMixin}
        """
        client.HTTPDownloader(uri, io.BytesIO()) 
开发者ID:wistbean,项目名称:learn_python3_spider,代码行数:9,代码来源:test_webclient.py

示例11: __init__

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def __init__(self, url, file, progressCallback, *a, **kw):
        client.HTTPDownloader.__init__(self, url, file, *a, **kw)
        self.progressCallback = progressCallback
        self.written = 0 
开发者ID:kenorb-contrib,项目名称:BitTorrent,代码行数:6,代码来源:HTTPDownloader.py

示例12: gotHeaders

# 需要导入模块: from twisted.web import client [as 别名]
# 或者: from twisted.web.client import HTTPDownloader [as 别名]
def gotHeaders(self, headers):
        self.response_headers = headers
        client.HTTPDownloader.gotHeaders(self, headers)
        self.contentLength = headers.get("content-length", None)
        if self.contentLength is not None:
            self.contentLength = int(self.contentLength[0]) 
开发者ID:kenorb-contrib,项目名称:BitTorrent,代码行数:8,代码来源:HTTPDownloader.py


注:本文中的twisted.web.client.HTTPDownloader方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。