如何获取站点顾问数据?
How to get Siteadvisor Data?
我已经发布了关于获取站点顾问数据的问题,因为该站点现在已重定向到 mcafee,所以我编辑了我的代码,但仍然没有结果。不知道哪一部分是错的。
我想要的是如果:
alt 为 Minimal 则为 1,或者 alt 为 Moderate 为 2,或者如果 alt 为 High 则为 3
代码如下:
/* 获取 SiteAdvisor 评分数据
---------------------------------------------- */
public 函数 getSiteAdvisor($域)
{
尝试
{
$callback_url = "https://www.mcafee.com/threat-intelligence/site/default.aspx?url=" . $域名;
$curl_response = $this->curl->get($callback_url);
if ($curl_response->headers['Status-Code'] == "200") {
libxml_use_internal_errors(TRUE);
$this->dom_doc->loadHTML($curl_response);
libxml_use_internal_errors(FALSE);
$xpath = new DOMXPath($this->dom_doc);
$tmp = $xpath->query('/html/body//div[@class="threeFourth"]//img/@alt')->item(0);
if ($tmp->hasAttribute('src')) {
$tmp = $tmp->getAttribute('src');
if (stripos($tmp, "Minimal") !== false) {
$siteadvisor_rating = 1;
} elseif (stripos($tmp, "Moderate") !== false) {
$siteadvisor_rating = 2;
} elseif (stripos($tmp, "High") !== false) {
$siteadvisor_rating = 3;
} else {
$siteadvisor_rating = 0;
}
} else {
$siteadvisor_rating = 0;
}
} else {
$siteadvisor_rating = 0;
}
$response = array(
'status' => 'success',
'data' => array(
'siteadvisor' => (int)$siteadvisor_rating
)
);
}
catch (Exception $e)
{
$response = array(
'status' => 'error',
'msg' => $e->getMessage()
);
}
return $response;
}
在 URL 之前是:http://www.siteadvisor.com/sites/=
但它被重定向到:https://www.mcafee.com/threat-intelligence/site/default.aspx?url=
和
old /html/body//div[@id="siteVerdict"]//img') 以及 green,yellow,red, name.
我找到了这个问题的答案:
我的错误是 'src'。应该替换为 'alt'
if ($tmp->hasAttribute('alt')) {
$tmp = $tmp->getAttribute('alt');
if (stripos($tmp, "Minimal") !== false) {
$siteadvisor_rating = 1;
} elseif (stripos($tmp, "Moderate") !== false) {
$siteadvisor_rating = 2;
} elseif (stripos($tmp, "High") !== false) {
$siteadvisor_rating = 3;
} else {
$siteadvisor_rating = 0;
}
} else {
$siteadvisor_rating = 0;
}
} else {
$siteadvisor_rating = 0;`
我已经发布了关于获取站点顾问数据的问题,因为该站点现在已重定向到 mcafee,所以我编辑了我的代码,但仍然没有结果。不知道哪一部分是错的。
我想要的是如果: alt 为 Minimal 则为 1,或者 alt 为 Moderate 为 2,或者如果 alt 为 High 则为 3
代码如下:
/* 获取 SiteAdvisor 评分数据
---------------------------------------------- */
public 函数 getSiteAdvisor($域)
{
尝试
{
$callback_url = "https://www.mcafee.com/threat-intelligence/site/default.aspx?url=" . $域名;
$curl_response = $this->curl->get($callback_url);
if ($curl_response->headers['Status-Code'] == "200") {
libxml_use_internal_errors(TRUE);
$this->dom_doc->loadHTML($curl_response);
libxml_use_internal_errors(FALSE);
$xpath = new DOMXPath($this->dom_doc);
$tmp = $xpath->query('/html/body//div[@class="threeFourth"]//img/@alt')->item(0);
if ($tmp->hasAttribute('src')) {
$tmp = $tmp->getAttribute('src');
if (stripos($tmp, "Minimal") !== false) {
$siteadvisor_rating = 1;
} elseif (stripos($tmp, "Moderate") !== false) {
$siteadvisor_rating = 2;
} elseif (stripos($tmp, "High") !== false) {
$siteadvisor_rating = 3;
} else {
$siteadvisor_rating = 0;
}
} else {
$siteadvisor_rating = 0;
}
} else {
$siteadvisor_rating = 0;
}
$response = array(
'status' => 'success',
'data' => array(
'siteadvisor' => (int)$siteadvisor_rating
)
);
}
catch (Exception $e)
{
$response = array(
'status' => 'error',
'msg' => $e->getMessage()
);
}
return $response;
}
在 URL 之前是:http://www.siteadvisor.com/sites/=
但它被重定向到:https://www.mcafee.com/threat-intelligence/site/default.aspx?url=
和
old /html/body//div[@id="siteVerdict"]//img') 以及 green,yellow,red, name.
我找到了这个问题的答案: 我的错误是 'src'。应该替换为 'alt'
if ($tmp->hasAttribute('alt')) {
$tmp = $tmp->getAttribute('alt');
if (stripos($tmp, "Minimal") !== false) {
$siteadvisor_rating = 1;
} elseif (stripos($tmp, "Moderate") !== false) {
$siteadvisor_rating = 2;
} elseif (stripos($tmp, "High") !== false) {
$siteadvisor_rating = 3;
} else {
$siteadvisor_rating = 0;
}
} else {
$siteadvisor_rating = 0;
}
} else {
$siteadvisor_rating = 0;`