百度seo

百度html

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Web.Script.Serialization;

namespace YinLong.Framework.seo
{
    /// <summary>
    /// 專門給各大搜索引擎提供操做幫助的類
    ////// 時  間:2015-10-28
    //////
    /// </summary>
    public class SeoHelper
    {
        /// <summary>
        ///直接將提供的Url發送到Ping百度http://ping.baidu.com/ping.html
        /// </summary>
        /// <param name="url">要發送的url注意帶上http://</param>
        /// <returns>成功true 不然爲False</returns>
        public static Boolean PingBaidu(string url)
        {
            try
            {
                StringBuilder sb = new StringBuilder();
                sb.Append("<?xml version=\"1.0\"?>");
                sb.Append("<methodCall>");
                sb.Append("<methodName>weblogUpdates.ping</methodName>");
                sb.Append("<params>");
                sb.Append("<param>");
                sb.Append("<value><string>" + url + "</string></value>");
                sb.Append("</param><param><value><string>" + url + "</string></value>");
                sb.Append("</param>");
                sb.Append("</params>");
                sb.Append("</methodCall>");

                HttpHelperMin http = new HttpHelperMin();
                HttpItemMin item = new HttpItemMin()
                {
                    URL = "http://ping.baidu.com/ping/RPC2",//URL     必需項
                    Method = "POST",//URL     可選項 默認爲Get
                    Referer = "http://ping.baidu.com/ping.html",//來源URL     可選項
                    Postdata = sb.ToString(),//Post數據     可選項GET時不須要寫
                    ProtocolVersion = HttpVersion.Version10,
                };
                HttpResultMin result = http.GetHtml(item);

                if (result.Html.Contains("<int>0</int>"))
                {
                    return true;
                }
            }
            catch { }
            return false;
        }

        /// <summary>
        ///直接將提供的Url提交給百度原創提交接口,須要自行申請Taken
        /// </summary>
        /// <param name="curl">要發送的url注意帶上http://</param>
        /// <param name="token">TzIJxrHBBTH9VdsX默認的Token值</param>
        /// <returns>成功true 不然爲False</returns>
        public static OriginalModel OriginalPingBaidu(string curl, string token = "TzIJxrHBBTH9VdsX")
        {
            string url = string.Format("http://data.zz.baidu.com/urls?site={0}&token={1}", new Uri(curl).Host, token);
            HttpHelperMin http = new HttpHelperMin();
            HttpItemMin item = new HttpItemMin()
            {
                URL = url,//URL     必需項
                Method = "POST",//URL     可選項 默認爲Get
                Referer = curl,//來源URL     可選項
                Postdata = curl,//Post數據     可選項GET時不須要寫
                ProtocolVersion = HttpVersion.Version10,
                ContentType = "text/plain",
                UserAgent = "curl/7.12.1"
            };
            HttpResultMin result = http.GetHtml(item);

            JavaScriptSerializer jss = new JavaScriptSerializer();
            var model = (OriginalModel)jss.Deserialize<OriginalModel>(result.Html);

            return model;
            //if (result.Html.Contains("\"success\":1"))
            //{
            //    return true;
            //}

            //return false;
        }
        public class OriginalModel
        {
            public int remain { get; set; }
            public int success { get; set; }
        }
    }
}
相關文章
相關標籤/搜索