Skip to main content

确定一个域是否在 Alexa 或 Cisco 前一百万域列表中。

项目描述

===============================
一百万
================== =============

.. 图片:: https://img.shields.io/pypi/v/onemillion.svg
:target: https://pypi.python.org/pypi/一百万

.. 图片:: https://img.shields.io/travis/fhightower/onemillion.svg
:target: https://travis-ci.org/fhightower/onemillion

.. 图片:: https://codecov。 io/gh/fhightower/onemillion/branch/master/graph/badge.svg
:target: https://codecov.io/gh/fhightower/onemillion

.. image:: https://api.codacy.com/project/徽章/等级/e47d712af7e24ac493e76392d1613e82
:alt: Codacy 徽章
:target: https://www.codacy.com/app/fhightower/onemillion

.. 图像:: https://readthedocs.org/projects/onemillion/badge/?version=latest
:target: https://onemillion.readthedocs.io/en/latest/?badge=latest
:alt: 文档状态

。 .image:: https://pyup.io/repos/github/fhightower/onemillion/shield.svg
:target: https://pyup.io/repos/github/fhightower/onemillion/
:alt: Updates

判断一个域在 Alexa 或 Cisco 前一百万域名列表中。

文档可在此处获得:`https://onemillion.readthedocs.io <https://onemillion.readthedocs.io>`_。

安装
============

推荐的安装方式是使用`pip <https://pypi.python.org/pypi/pip/>`_:

``pip install onemillion``

或者,您可以按如下方式安装 onemillion:

.. code-block:: shell

git clone https://github.com/fhightower/onemillion.git && cd onemillion;
python setup.py install --user;

用法
=====

使用默认设置时,在初始化 onemillion 的实例并调用 ``domain_in_million`` 函数时将执行以下步骤:

1. 检查域列表今天是否已更新。

2a. 如果它们今天已更新,请在列表中查找给定域并停止。

2b。如果今天没有更新列表,请发出“HEAD”请求并检查当前 etag 与先前的 etag(本地存储)以查看列表是否已更新。

3a。如果 etag 相同(意味着列表尚未更新),请在列表中查找给定域并停止。

3b。如果 etag 不同(意味着列表已更新),请请求列表,解压缩它们,并将它们保存在默认缓存位置(``~/.onemillion``)。

4. 现在列表已更新,在列表中搜索给定域。

默认用法~Hello World!
----------------------------

通过 Python
^^^^^^^^^^

一百万的默认用法如下:

. . 代码块:: python

import onemillion

o = onemillion.OneMillion()
o.domain_in_million("google.com") # 1
o.domain_in_million("gaagle.com") # 无

使用上述方法,alexa 和 cisco 前一百万的域列表以及一些元数据将存储在主目录中:``~/.onemillion``。

通过命令行^^^^^^^^^^^^^^^ 通过命令行默认使用
onemillion

如下:

.. code-block:: shell

onemillion google.com

与在 a 中使用 onemillion 时一样python 脚本,alexa 和 cisco 前一百万域列表以及一些元数据将存储在主目录中:`~/.onemillion`。

没有缓存
----------

通过 Python
^^^^^^^^^^

如果你不想缓存域列表,你可以通过设置 ``cache=False` 告诉 onemillion 不要缓存任何东西` 在初始化时,如下所示:

.. code-block:: python

import onemillion

# 不缓存任何东西
o = onemillion.OneMillion(cache=False)
o.domain_in_million("google.com") # 1
o.domain_in_million("gaagle.com") #

无如果您只进行一两次调用或如果存储空间是一个问题,上述代码很好,但建议您在可行的情况下缓存列表,以限制域列表的流量。

**注意:** 目前,“无缓存”配置将引发错误。这将在 `issue #12 <https://github.com/fhightower/onemillion/issues/12>`_ 修复后更新和处理。

通过命令行
^^^^^^^^^^^^^^^^

通过命令行,原理同上:

.. code-block:: shell

一百万 google.com --no-cache

自定义缓存位置
---------

通过 Python
^^^^^^^^^^

如果您正在缓存列表,但想将它们缓存在主目录以外的位置,您可以通过在初始化 onemillion 时设置 ``cache_location`` 参数来指定自定义缓存位置,如下所示:

.. code-block:: python

import onemillion

# 缓存数据到特定路径
o = onemillion.OneMillion(cache_location=<YOUR_PATH_HERE>)
o.domain_in_million("google.com") # 1
o.domain_in_million("gaagle.com") # None

这将缓存您提供的路径中的域列表.

通过命令行
^^^^^^^^^^^^^^^^
通过命令行,原理同上:

.. code-block:: shell

onemillion google.com --cache_location ~/.cache/onemillion/



.. code-block:: shell

onemillion google.com -l ~/.cache /onemillion/

无更新
---------

通过 Python
^^^^^^^^^^

如果您已经运行 onemillion 并缓存了域列表,但不想继续更新它们,您可以在初始化时指定 ``update=False`` 如下所示:

.. code-block:: python

import onemillion

# 不更新缓存内容
o = onemillion.OneMillion(update=False)
o.domain_in_million("google.com") # 1
o.domain_in_million("gaagle.com") # 无

请注意,默认情况下,一百万将在发出任何请求之前检查它今天是否已经更新了域列表。因此,一百万默认情况下会负责任地和智能地处理更新,并且很少有这种配置(使用 ``update=False``)是必要的。尽管如此......它就在那里,欢迎您使用它。

通过命令行
^^^^^^^^^^^^^^^^

通过命令行,原理同上:

.. code-block:: shell

onemillion google.com --no-update

Credits
==== ===

这个包是用 Cookiecutter_ 和 `fhightower/python-project-template`_ 创建的。

.. _Cookiecutter:https://github.com/audreyr/cookiecutter
.. _`fhightower/python-project-template`: https://github.com/fhightower/python-project-template


=======
历史
=======

0.5.0 (2017-08 -12)
------------------

* 添加命令行功能

0.4.5 (2017-05-09)
-------------- ----

* 返回给定主机的排名,而不仅仅是一个布尔值
* 在测试

0.4.1 (2017-04-25)时添加(更好的)代码覆盖率
---------------- --

* 改进评论和文档
* 将列表更新与域检查

分开 0.4.0 (2017-04-12)
------------------

* 改进测试

0.1.0 (2017-04-04)
------------------

* PyPI 上的第一个版本。

项目详情


下载文件

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

源分布

一百万-1.0.0.tar.gz (15.8 kB 查看哈希

已上传 source