Написал на досуге вспомогательную программу для определения тица Яндекса. Реализация на c#. В ближайшее время на всеобщее обозрение появится бесплатная программа, которая позволит быстро определять google pagerank и тиц яндекса, возможно еще какой-нибудь полезный функционал.Реализация определения Яндекс Тиц-а
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.Net.Sockets;
- using System.IO;
- using System.Xml.Linq;
- namespace CheckCY
- {
- public struct CYResult
- {
- public CYResult(string rang, string value)
- {
- this.rang = rang;
- this.value = value;
- }
- public string rang;
- public string value;
- }
- public class CheckYandexCY
- {
- public static CYResult Process(string url)
- {
- Socket _socListener = new Socket(
- AddressFamily.InterNetwork,
- SocketType.Stream,
- ProtocolType.IP);
- try
- {
- string yandexhost = "bar-navig.yandex.ru";
- string yandexua = "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.6) Gecko/20060728 Firefox/1.5";
- _socListener.Connect(yandexhost, 80);
- if (_socListener.Connected)
- {
- string headers = string.Empty;
- string ch = string.Empty;
- headers += "GET /u?show=31&url=" + url + " HTTP/1.1\r\n";
- headers += "Host: " + yandexhost + "\r\n";
- headers += "User-Agent: " + yandexua + "\r\n";
- headers += "Connection: Close\r\n\r\n";
- _socListener.Send(Encoding.UTF8.GetBytes(headers));
- int total = 0;
- const int bufferSize = 10240;
- byte[] buffer = new byte[bufferSize];
- using (MemoryStream ms = new MemoryStream())
- {
- while (true)
- {
- int receive = _socListener.Receive(buffer, bufferSize, SocketFlags.None);
- if (receive > 0)
- {
- total += receive;
- ms.Write(buffer, 0, receive);
- }
- else
- {
- break;
- }
- }
- string s = Encoding.UTF8.GetString(ms.GetBuffer()).Trim();
- string [] ss = s.Split(new string[] { "\r\n\r\n" }, StringSplitOptions.None);
- if (ss.Length > 1)
- {
- string xmltext = ss[1];
- XDocument doc = XDocument.Parse(xmltext);
- foreach(var v in doc.Descendants("tcy"))
- {
- XAttribute a = null;
- a = v.Attribute("rang");
- string rang = a == null ? string.Empty : a.Value;
- a = v.Attribute("value");
- string value = a == null ? string.Empty : a.Value;
- return new CYResult(rang, value);
- }
- }
- }
- }
- }
- catch
- {
- }
- finally
- {
- ((IDisposable)_socListener).Dispose();
- }
- return new CYResult();
- }
- }
- }



Программная реализация, интересно.
интересно когда будет программа? И где можно будет ее скачать? надеюсь что на этом блоге тоже
А зачем? Полно готовых программ для браузеров. Всё покажут и расскажут.
ItRaX7 , [url=http://qmuyypwchdps.com/]qmuyypwchdps[/url], [link=http://hlwhalysyikg.com/]hlwhalysyikg[/link], http://tvaqaauwzcqz.com/
yg4Ohm opmtjenxpohn
sLwYIZ , [url=http://ulnbbvtgjvdv.com/]ulnbbvtgjvdv[/url], [link=http://gtmcubbshgqg.com/]gtmcubbshgqg[/link], http://axwbvnjkykng.com/
…я за программу, на браузерах «улучшалки» тормозят его работу!
Спасибо за скрипт
Спасибо авторам за такие программки. С кожалению не знаю как воспользоваться приведенным кодом
. Если был готовая программа, наверное было бы прощее ее попробовать. Но тем кто пониает, конечно такая реализация будет полезной.