跳转到主要内容

使用asyncio的DHT爬虫框架。

项目描述

使用asyncio的DHT爬虫框架。

用法

from maga import Maga

import logging
logging.basicConfig(level=logging.INFO)


class Crawler(Maga):
    async def handler(self, infohash, addr):
        logging.info(addr)
        logging.info(infohash)


# Or, if you want to have more control

class Crawler(Maga):
    async def handle_get_peers(self, infohash, addr):
        logging.info(
            "Receive get peers message from DHT {}. Infohash: {}.".format(
                addr, infohash
            )
        )

    async def handle_announce_peer(self, infohash, addr, peer_addr):
        logging.info(
            "Receive announce peer message from DHT {}. Infohash: {}. Peer address:{}".format(
                addr, infohash, peer_addr
            )
        )


crawler = Crawler()
# Set port to 0 will use a random available port
crawler.run(port=0)

变更日志

版本 3.0.0

  • peer_addr 参数添加到 handle_announce_peer 方法。

  • handler 上不要抛出 NotImplementedError

版本 2.0.1

  • 当信号未实现时不要失败。( #3 )

版本 2.0.0

  • 添加 handle_get_peershandle_announce_peer 方法。

  • addr 参数添加到 handler

项目详情


下载文件

下载适合您平台的项目文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分发

Maga-3.0.0.zip (7.2 kB 查看哈希值)

上传时间:

Maga-3.0.0.tar.gz (4.4 kB 查看哈希值)

上传时间: 源代码

构建版本

Maga-3.0.0-py2.py3-none-any.whl (4.9 kB 查看哈希值)

上传时间: Python 2 Python 3

支持