// Herhangi Bir Website’den E-Mail Adreslerini Yakalama | www.yazilimcik.com
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;
// Herhangi Bir Website’den E-Mail Adreslerini Yakalama | www.yazilimcik.com
namespace Websiteden_EMail_Yakalama_Yazilimcik_Com
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private string SiteAdresiniAl()
{
string website = "http://" + txtAdres.Text;
return website;
}
private string KaynakSiteyiAl(string adres)
{
WebResponse Response = null;
try
{
WebRequest WebRequest = WebRequest.Create(adres);
Response = WebRequest.GetResponse();
}
catch (WebException e)
{
lblDurum.Text = "Siteye Baglanamiyor..!";
btnYakala.Enabled = true;
return null;
}
Stream str = Response.GetResponseStream();
StreamReader strReader = new StreamReader(str);
string resource = strReader.ReadToEnd();
return resource.ToLower();
}
private string[] MailAdresleriniAl(string resource)
{
string EMailDeseni = @"(href=)((’)|(""))(mailto:)(?(.*))((’)|(""))";
int i = 0;
Regex Regex = new Regex(EMailDeseni);
Match str = Regex.Match(resource);
MatchCollection EMailColumn = Regex.Matches(resource);
string[] EMail = new string[EMailColumn.Count];
foreach (Match EMailMatch in EMailColumn)
{
EMail[i] = EMailMatch.Groups["mail"].ToString();
i++;
}
return EMail;
}
private void Form1_Load(object sender, EventArgs e)
{
btnYeni.Enabled = false;
txtAdres.Focus();
// www.yazilimcik.com
}
private void btnYakala_Click(object sender, EventArgs e)
{
btnYeni.Enabled = true;
btnYakala.Enabled = false;
if (txtAdres.Text == string.Empty)
{
MessageBox.Show("Lütfen Geçerli Bir Web Adresi Girin..!", "Bilgi:");
btnYakala.Enabled = true;
txtAdres.Focus();
}
else
{
MessageBox.Show("Website’sinden Gerekli E-Mail Bilgileri Aliniyor..\nLütfen Bekleyin..!", "Bilgi: www.yazilimcik.com", MessageBoxButtons.OK, MessageBoxIcon.Information);
string website = SiteAdresiniAl();
string resource = KaynakSiteyiAl(website);
if (resource != null)
{
string[] EMail = MailAdresleriniAl(resource);
lblDurum.Text = "" + EMail.Length + " Tane E-Mail Adresi Bulundu..!";
foreach (string yakalananMail in EMail)
{
lstEMail.Items.Add(yakalananMail);
}
}
}
}
private void btnYeni_Click(object sender, EventArgs e)
{
btnYakala.Enabled = true;
lblDurum.Text = string.Empty;
lstEMail.Items.Clear();
txtAdres.Text = string.Empty;
txtAdres.Focus();
}
}
}
// Herhangi Bir Website’den E-Mail Adreslerini Yakalama | www.yazilimcik.com