2016-09-27 57 views
0

我想从网站url链接中找到网站电子邮件地址(如[email protected])。
所以,有没有可能从网站的URL找到电子邮件地址?
如果是的话,请分享如何实施。
语言不是必需的。从他们使用正则表达式从网站查找电子邮件地址url

按我的看法,
如果我们使用curl阅读网站的网址内容,并
查找电子邮件地址。
有可能吗?

使用curl找到读取网页内容娄代码从网址:

<?php 
$url = 'yoururl'; 
$curl = curl_init(); 
curl_setopt($curl, CURLOPT_URL, $url); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($curl, CURLOPT_HEADER, false); 
$data = curl_exec($curl); 
curl_close($curl); 

使用从$数据串正则表达式,然后发现后的电子邮件地址。

可能吗?

+0

在http://stackoverflow.com/questions/1028553/how-to-get-看看电子邮件地址从长字符串 – ravisachaniya

回答

2

一个简单的正则表达式在我头上。

preg_match_all("/([a-z0-9\.]{1,50}@[a-z0-9]{1,50}\.[a-z]{1,5})/ims",$data,$matches) 
+0

但是有可能使用CURL读取所有的domian网页? –

+0

你是什么意思?你想蜘蛛整个域?这有点棘手的任务也许是这样的最好的选择然后:http://emailextractorpro.com/ –

2

从技术上讲,你可以通过查询WHOIS公共信息(这可以通过查询API来完成),但公布的电子邮件地址发送一封从一个域的电子邮件地址很少是公司真正的电子邮件地址,而报告的邮箱垃圾邮件或技术请求。

http://network-tools.com/default.asp?prog=network&host=www.google.com

它如何能做到返回JSON输出一些示例代码:

<?php 

function getIP() { 

    if (!empty($_SERVER['HTTP_CLIENT_IP'])) { 
    $ip = $_SERVER['HTTP_CLIENT_IP']; 
    } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { 
      $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; 
    } else { 
    $ip = $_SERVER['REMOTE_ADDR']; 
    } 

    return chkIP($ip); 

} 

function chkIP($ip) { 

    $dirtydomain = gethostbyaddr($ip); 
    preg_match("/((\w*)\.+(\w{2})\.+(\w{2})$)|((\w*)\.+(\w{3})$)/", $dirtydomain, $output_array); 
    $cmd = 'whois ' . $output_array[0]; 
    $data = shell_exec($cmd); 

    return getEmail($data,$output_array[0]); 

} 


function getEmail($data,$domain) { 

    $array = preg_split('/()|(\n)/',$data); //DATA from WHOIS 

     foreach ($array as $value) { 

      if (strpos($value, '@') == TRUE) { 

        $emailArray[] = $value; 

      } 
     } 

     return outputArray($emailArray,$domain); 
} 



function outputArray($emailArray, $domain) { 

     if (count($emailArray) < 1) { 

      return json_encode("No Email Address Found for " . $domain); 

     } else { 

      return json_encode($emailArray); 

     } 

} 

getIP(); //Will Return JSON Output 


?>