lukaswhite/weboftrust

该包最新版本(dev-master)没有提供许可信息。

dev-master 2015-10-14 10:26 UTC

This package is auto-updated.

Last update: 2024-08-28 00:24:45 UTC


README

## Web of Trust API 库

Web of Trust API ([Web of Trust API](https://www.mywot.com/wiki/API "Web of Trust API") 提供了关于网站的声誉数据。

它旨在尝试回答以下问题;

  • 这个网站的可信度如何?
  • 这个网站对儿童安全吗?
  • 这个网站是否存在钓鱼、恶意软件或欺诈的风险?
  • 这个网站的内容是否值得怀疑?
  • 这个网站包含成人内容吗?
  • 这个网站是否在黑名单上,如果是,是什么风险?

除了黑名单信息外,这些数据都不涉及绝对值(即使如此,也无法保证有问题的网站应该在黑名单上,只是表明它在黑名单上)。然而,它作为尝试评估网站适宜性或不适适宜性的起点是有用的。

## 开始之前 - 获取 API 密钥

为了使用 Web Of Trust API,您需要一个 API 密钥,您可以在这里申请。

## 使用方法

// Create a client
$client = \Lukaswhite\Weboftrust\WeboftrustClient::factory();

// IMPORTANT - set the API key
$client->setApiKey('PUT-YOUR-API-KEY-HERE');

// Call the API, passing in an array of URLs
$response = $client->lookup(array('www.bbc.co.uk', 'cnn.com'));

## 返回值

调用 lookup() 返回一个对象数组,代表相关的网站。数组按 URL 索引。每个对象都是 Lukaswhite\Weboftrust\Models\Website 的实例。例如

$response = $client->lookup(array('www.bbc.co.uk', 'cnn.com'));

// Get the BBC website
$website = $response['www.bbc.co.uk'];

// Is the wesbite trustworthy?
if ($website->isTrustworthy()) {
	// it sure is, do something...
} else {
	// Uh-oh, perhaps we should be wary of this site. 
}

关于您可以在 Website 类上调用的各种方法,请继续阅读。

## 可信度

一旦您调用 API,您应该对网站的“可信度”有一个指示。这是一个略微模糊的概念,因此如何解释完全取决于您。可信度是一个最多为一百的值 - “这个网站可信到什么程度?” - 第二个值衡量评估的置信度。(这在 README 中稍后解释。)

可信度是返回的 Website 模型的属性,包含两个属性 - reputationconfidence。所以,如果您想知道可信度是否高于五十,并且对该评估的置信度高于十,您可以这样做

$is_trustworthy = ( ( $website->trustworthiness->reputation >= 50 ) && ( $website->trustworthiness->confidence > 10 ) );

## 儿童安全

API 还可能提供有关网站对儿童安全性的指示。这与可信度的工作方式相同,只是这次属性是 childSafety。例如

$suitable = ( ( $website->childSafety->reputation >= 50 ) && ( $website->childSafety->confidence > 10 ) );

## 分类

Web of Trust 将网站放入一个或多个分类。您可以在这里找到列表。说一个网站属于某个类别,或者不属于某个类别,并不是那么简单。相反,如果 API 指示网站属于某个类别,它还包含一个确定性的程度,这是一个最多为一百的值。因此,与其问“这个网站是否包含成人内容”,您应该真正问的是“这个网站包含成人内容的可能性有多大?”。我们可以尝试将这“转换”为一个简单的“是/否”,通过指定一个最低确定性阈值,例如

$is_adult = $website->isInCategory(Website::ADULT_CONTENT, 20);

在这里,我们是在问这个网站是否包含成人内容,但我们还指定,为了回答“是”,该分类的确定性必须至少为二十。

值得注意的是,并非所有类别都是坏的,甚至都不是可疑的。由 501 标识的类别是一个“好网站”。您可以检查一下

$good = $website->isInCategory(Website::GOOD_SITE);

Website 类包含许多类常量,这样您就不必使用底层数字类别 ID。

## 黑名单

有时,API会表明一个网站被列入第三方黑名单。共有四种类型

  • 恶意软件
  • 钓鱼
  • 诈骗
  • 垃圾邮件

要检查一个网站是否被列入黑名单,请使用isBlacklisted()方法。

要检查一个网站是否在任何黑名单中,无需任何参数调用它

$is_blacklisted = $website->isBlacklisted();

要检查它是否在特定类型的黑名单中,请使用上述值之一作为参数,例如

$is_blacklisted_for_spam = $website->isBlacklisted('spam');

##关于置信度的说明

各种组件——可靠性、儿童安全以及分类——包括一个置信度值。这是对评估确定程度的度量。因此,仅仅询问“这个网站有多可靠?”是不够的。相反,你会问;“这个网站有多可靠,你有多确定这个答案?”。

因此,考虑以下方法

$is_trustworthy = $website->isTrustworthy();

不使用任何参数,这会假设一个最小阈值——记住,没有绝对的东西,只有以零到一百之间的值形式存在的确定程度——以及一个置信度阈值。考虑以下

$is_trustworthy = $website->isTrustworthy(50, 10);

这提出了相同的问题,但明确地说明了两个问题。第一个是评估网站“可靠性”的值所对应的阈值。50大约是50%。这是否是一个足够高的阈值来做出判断是一个悬而未决的问题,这取决于你自己去尝试和决定使用哪些值,以及如何使用它们。

它还在第二个参数中表明,为了回答“是”,置信度应该达到十或更高。十是一个很好的数字,因为Web of Trust只有在置信度达到十或更高时才会显示关于网站的警告。根据你的需求或你对数据的处理经验,你可能想要更高的置信度。

##免责声明

我与Web of Trust没有关联,数据是众包的——所以不能保证它的准确性。如果你使用此API,并且一个不合适的网站被标记为合适的,或者如果你拥有的网站被标记为不合适、潜在危险或包含可疑内容,我无法承担任何责任。

##问题

对于任何问题,你可能首先会查阅Web Of Trust文档。如果你的问题或问题与库有关,而不是与底层API有关,请在GitHub上提交一个问题。

Lukas White hello@lukaswhite.com