igor456

igor456
Рейтинг
104
Регистрация
10.10.2005

Список «родственных» тем огласить можете ?

класс для определения PR на C#

сори, ссылку где брал не помню, по-этому даю то, что нашел на локалке...

public class GooglePageRankGetter

{

private readonly uint _googleMagic = 0xE6359A60;

public GooglePageRankGetter()

{

}

public int GetPageRank(string url)

{

if (url.ToLower().StartsWith("http://") == false)

url = "http://" + url;

url = "info:" + url;

uint checksum = GetChecksum(url);

string googleUrl = "http://www.google.com/search?client=navclient-auto&ch=6" +

checksum + "&features=Rank&q=" + url;

string pageText = GetResponseText(googleUrl);

string pageRankString = "0";

Regex re = new Regex(":(?<1>\\d+)\\n", RegexOptions.Singleline | RegexOptions.IgnoreCase);

Match m = re.Match(pageText);

if (m.Success) pageRankString = m.Groups[1].ToString();

int pageRank = int.Parse(pageRankString);

return pageRank;

}

private uint GetChecksum(string url)

{

long a = 0x9E3779B9;

long b = a;

long c = _googleMagic;

int k = 0;

int len = url.Length;

while (len >= 12)

{

a += ((int) url[k + 0] + ((int) url[k + 1] << 8) + ((int) url[k + 2] << 16) + ((int) url[k + 3] << 24));

b += ((int) url[k + 4] + ((int) url[k + 5] << 8) + ((int) url[k + 6] << 16) + ((int) url[k + 7] << 24));

c += ((int) url[k + 8] + ((int) url[k + 9] << 8) + ((int) url[k + 10] << 16) + ((int) url[k + 11] << 24));

List<long> mix = Mix(a, b, c);

a = mix[0];

b = mix[1];

c = mix[2];

k += 12;

len -= 12;

}

c += url.Length;

switch (len)

{

case 11: c += ((int) url[k + 10] << 24); goto case 10;

case 10: c += ((int) url[k + 9] << 16); goto case 9;

case 9: c += ((int) url[k + 8] << 8); goto case 8;

case 8: b += ((int) url[k + 7] << 24); goto case 7;

case 7: b += ((int) url[k + 6] << 16); goto case 6;

case 6: b += ((int) url[k + 5] << 8); goto case 5;

case 5: b += ((int) url[k + 4]); goto case 4;

case 4: a += ((int) url[k + 3] << 24); goto case 3;

case 3: a += ((int) url[k + 2] << 16); goto case 2;

case 2: a += ((int) url[k + 1] << 8); goto case 1;

case 1: a += ((int) url[k + 0]); break;

}

List<long> mixx = Mix(a, b, c);

return (uint) mixx[2];

}

private List<long> Mix(long a, long b, long c)

{

a -= b; a -= c; a = (int) a ^ (ZeroFill(c, 13));

b -= c; b -= a; b ^= (int) a << 8;

c -= a; c -= b; c = (int) c ^ (ZeroFill(b, 13));

a -= b; a -= c; a = (int) a ^ (ZeroFill(c, 12));

b -= c; b -= a; b ^= (int) a << 16;

c -= a; c -= b; c = (int) c ^ (ZeroFill(b, 5));

a -= b; a -= c; a = (int) a ^ (ZeroFill(c, 3));

b -= c; b -= a; b ^= (int) a << 10;

c -= a; c -= b; c = (int) c ^ (ZeroFill(b, 15));

List<long> arr = new List<long>();

arr.Add(a);

arr.Add(b);

arr.Add(c);

return arr;

}

private long ZeroFill(long a, int b)

{

long z = 2147483648;

if ((z & a) > 0)

{

a = (int) a >> 1;

a = (int) a & (~z);

a = (int) a | 0x40000000;

a = (int) a >> (b - 1);

}

else

a = (int) a >> b;

return a;

}

private string GetResponseText(string url)

{

string pageText = "";

HttpWebRequest request = null;

WebResponse response = null;

System.IO.Stream stream = null;

System.IO.StreamReader reader = null;

try

{

request = (HttpWebRequest) WebRequest.Create(url);

request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)";

request.Timeout = 4 * 1000;

response = request.GetResponse();

stream = response.GetResponseStream();

reader = new System.IO.StreamReader(

stream, System.Text.Encoding.GetEncoding(1251));

pageText = reader.ReadToEnd();

reader.Close();

response.Close();

}

catch (WebException) // Ошибка соединения, либо у Гугла нет информации о странице

{

}

finally

{

if (response != null) response.Close();

if (stream != null) stream.Close();

if (reader != null) reader.Close();

}

return pageText;

}

}

Это конечно понятно, но думаю все таки исходя из уровня проникновения инета в США хоть примерное количество (понятно что погрешность будет велика) хостов сказать можно.

crazy-diz, просто интересно, а что Вам не понравилось в хтмл-страничке ? :)

А почему скриншоты. Для принятия решения покупать или нет скришотов думаю будет мало... Если есть возможность, скиньте ссылки в PM. Спасибо.

Ну проверит он, что сайты висят на одном айпи, ну и что ? у некоторых хостеров на одной машине по сотне сайтов может висеть и ничего. А вот с владельцем домена да... надо регистрировать на разных людей.

Спасибо. Планирую сделать свой движок, а потом на его основе около 10 каталогов (для начала). Основной целью является продвижение своих проектов. С этой целью так же хочу сделать возможность добавление внутренних страниц.

Deni:
Для прогона 1000 каталогов надо заплатить минимум 10.000 - 15.000 $
Для этого надо платно по 20 баксов разместить 500-700 ссылок.

Ну не обязательно прогон заказывать на стороне, ТС может купить баз для автопрогона и самостоятельно гнать свои каталоги по базам автоматом. Конечно особого веса такие прогоны не дадут, но все же...

solarcoast:
что именно заказывали /кол-во автоматов и ручек/?

регистрация по 4500+ каталогам ручная регистрация по 500 каталогам 35$

Спасибо топик-стартеру. Прогон сделал, на мыло свалилось почти 1000 писем, сайт не новый. Буду ждать результатов...

Всего: 774