コード例 #1
0
ファイル: index.aspx.cs プロジェクト: wenysky/mydnt
        private void UrlConfig_Bind()
        {
            //string str_url = Server.MapPath("/") + "URLConfig.xml";
            UrlConfigManager configmager = new UrlConfigManager();
            IList<Entity.URLConfig> list = configmager.GetUrlConfig();

            if (list.Count == 0)
                result = " <tr><td colspan=\"32\" align=\"center\">您还没有配置抓取规则</td></tr>";

            for (int i = 0; i < list.Count; i++)
            {
                if (list[i].Proxy == "")
                {
                    list[i].Proxy = "暂无填写";
                }

                if (list[i].Port == "")
                {
                    list[i].Port = "暂无填写";
                }

                result += "<tr><td>" + list[i].Proxy + "</td><td>" + list[i].Port + "</td><td >" + list[i].Site + "</td><td >" + list[i].SiteUrl + "</td><td>" + list[i].Channel + "</td><td>" + list[i].Charset + "</td><td><a href=Item.aspx?action=showitem&site=" + list[i].Site + "&siteurl=" + list[i].SiteUrl + "&channel=" + list[i].Channel + "&charset=" + list[i].Charset + ">详细信息</a></td><td><a href=AddConfig.aspx?action=update&site=" + list[i].Site + "&siteurl=" + list[i].SiteUrl + "&channel=" + list[i].Channel + "&charset=" + list[i].Charset + ">编辑</a></td><td><a href=DeleteConfig.aspx?action=delete&site=" + list[i].Site + "&siteurl=" + list[i].SiteUrl + "&channel=" + list[i].Channel + "&charset=" + list[i].Charset + " onclick='javascript:return p_del();'>删除</a></td><td><a href=setuser.aspx>添加发贴用户</a><td><a href=addconfig.aspx?action=add>添加规则</a></td></tr>";

                //result += "<tr><td><a href=UpdateConfig.aspx?action=update&entity=" + list[i] + ">编辑</a></td><td><a href=DeleteConfig.aspx?action=delete&entity=" + list[i] + ">删除</a></td><td>" + list[i].Proxy + "</td><td>" + list[i].Port + "</td><td >" + list[i].Site + "</td><td >" + list[i].SiteUrl + "</td><td>" + list[i].Channel + "</td><td>" + list[i].Charset + "</td><td>" + list[i].ListFormat + "</td><td>" + list[i].StartPageNo + "</td><td>" + list[i].EndPageNo + "</td><td>" + list[i].ListNextPage + "</td><td>" + list[i].ListNextPageReplace + "</td><td>" + list[i].ListStep + "</td><td>" + list[i].ListContent + "</td><td>" + list[i].ListContentReplace + "</td><td>" + list[i].DetailLink + "</td><td>" + list[i].TitleDetail + "</td><td>" + list[i].TitleDetailReplace + "</td><td>" + list[i].AuthorDetail + "</td><td>" + list[i].AuthorDetailReplace + "</td><td>" + list[i].DateDetail + "</td><td>" + list[i].DateDetailReplace + "</td><td>" + list[i].ContentDetail + "</td><td>" + list[i].ContentDetailReplace + "</td><td>" + list[i].ContentList + "</td><td>" + list[i].ContentListReplace + "</td><td>" + list[i].TagDetail + "</td><td>" + list[i].TagDetailReplace + "</td><td>" + list[i].SnatchDate + "</td><td>" + list[i].SnatchInterval + "</td><td>" + list[i].SnatchFrequency + "</td></tr>";

            }
        }
コード例 #2
0
ファイル: CollectorCore.cs プロジェクト: wenysky/mydnt
 public CollectorCore()
 {
     hc = new HttpClient();
     sb = new StringBuilder();
     //UrlConfigManager ucm = new UrlConfigManager(__root);
     UrlConfigManager ucm = new UrlConfigManager();
     _configlist = ucm.GetUrlConfig();
 }
コード例 #3
0
ファイル: DeleteConfig.aspx.cs プロジェクト: wenysky/mydnt
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.QueryString["action"] == null || Request.QueryString["action"].ToString() == "")
            {
                return;
            }

            if (Request.QueryString["site"] == null || Request.QueryString["site"].ToString() == "")
            {
                return;
            }

            if (Request.QueryString["siteurl"] == null || Request.QueryString["siteurl"].ToString() == "")
            {
                return;
            }

            if (Request.QueryString["channel"] == null || Request.QueryString["channel"].ToString() == "")
            {
                return;
            }

            if (Request.QueryString["charset"] == null || Request.QueryString["charset"].ToString() == "")
            {
                return;
            }

            if (Request.QueryString["action"].ToString() == "delete")
            {
                URLConfig uc = new URLConfig();

                uc.Site = Request.QueryString["site"].ToString().Trim();

                uc.SiteUrl = Request.QueryString["siteurl"].ToString().Trim();

                uc.Channel = Request.QueryString["channel"].ToString().Trim();

                uc.Charset = Request.QueryString["charset"].ToString().Trim();

                UrlConfigManager ucm = new UrlConfigManager();

                ucm.RemoveChildNode(uc);

                Response.Redirect("index.aspx");
            }
        }
コード例 #4
0
ファイル: UrlConfig.aspx.cs プロジェクト: wenysky/mydnt
        private void gvUrlConfig_Bind()
        {
            //string str_url = Server.MapPath("/") + "URLConfig.xml";
            UrlConfigManager configmager = new UrlConfigManager();
            IList<Entity.URLConfig> list = configmager.GetUrlConfig();

            GridView1.DataSource = configmager.GetUrlConfig();
            GridView1.DataBind();
        }
コード例 #5
0
ファイル: UrlConfig.aspx.cs プロジェクト: wenysky/mydnt
        protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            URLConfig _urlconfig = new URLConfig();
            string str_url = Server.MapPath("/") + "URLConfig.xml";
            UrlConfigManager configmager = new UrlConfigManager();
            GridViewRow row = GridView1.Rows[e.RowIndex];
            int currentRow = (int)row.DataItemIndex;
            DataSet dataset = new DataSet();
            dataset.ReadXml(str_url);
            DataRow dr;
            dr = dataset.Tables[0].Rows[currentRow];

            _urlconfig.Site = Encode(dr.ItemArray[1].ToString());
            _urlconfig.SiteUrl =Encode(dr.ItemArray[2].ToString());
            _urlconfig.Channel = Encode(dr.ItemArray[3].ToString());
            _urlconfig.Charset = Encode(dr.ItemArray[4].ToString());

            #region Ignore
            //_urlconfig.Site = Encode(dr["Site"].ToString());
            //_urlconfig.SiteUrl =Encode(dr["SiteUrl"].ToString());
            //_urlconfig.Channel = Encode(dr["Channel"].ToString());
            //_urlconfig.Charset = Encode(dr["Charset"].ToString());
            //_urlconfig.Proxy = Encode(dr["Proxy"].ToString());
            //_urlconfig.Port = Encode(dr["Port"].ToString());
            //_urlconfig.ListFormat = Encode(dr["ListFormat"].ToString());
            //_urlconfig.ListNextPage = Encode(dr["ListNextPage"].ToString());
            //_urlconfig.ListNextPageReplace = Encode(dr["ListNextPageReplace"].ToString());
            //_urlconfig.StartPageNo = Encode(dr["StartPageNo"].ToString());
            //_urlconfig.EndPageNo =Encode(dr["EndPageNo"].ToString());
            //_urlconfig.ListStep = Encode(dr["ListStep"].ToString());
            //_urlconfig.ListContent = Encode(dr["ListContent"].ToString());
            //_urlconfig.ListContentReplace = Encode(dr["ListContentReplace"].ToString());
            //_urlconfig.DetailLink = Encode(dr["DetailLink"].ToString());
            //_urlconfig.TitleDetail = Encode(dr["TitleDetail"].ToString());
            //_urlconfig.TitleDetailReplace = Encode(dr["TitleDetailReplace"].ToString());
            //_urlconfig.AuthorDetail = Encode(dr["AuthorDetail"].ToString());
            //_urlconfig.AuthorDetailReplace = Encode(dr["AuthorDetailReplace"].ToString());
            //_urlconfig.DateDetail = Encode(dr["DateDetail"].ToString());
            //_urlconfig.DateDetailReplace = Encode(dr["DateDetailReplace"].ToString());
            //_urlconfig.ContentDetail = Encode(dr["ContentDetail"].ToString());
            //_urlconfig.ContentDetailReplace =Encode(dr["ContentDetailReplace"].ToString());
            //_urlconfig.ContentList= Encode(dr["ContentList"].ToString());
            //_urlconfig.ContentListReplace =Encode(dr["ContentListReplace"].ToString());
            //_urlconfig.TagDetail=Encode(dr["TagDetail"].ToString());
            //_urlconfig.TagDetailReplace=Encode(dr["TagDetailReplace"].ToString());
            //_urlconfig.SnatchDate=Encode(dr["SnatchDate"].ToString());
            //_urlconfig.SnatchInterval=Encode(dr["SnatchInterval"].ToString());
            //_urlconfig.SnatchFrequency = Encode(dr["SnatchFrequency"].ToString());
            #endregion

            if (configmager.UpdateURLConfig(_urlconfig))
            {
                #region 配置urlconfig
                _urlconfig.Proxy = Encode(((TextBox)row.Cells[0].Controls[0]).Text);
                _urlconfig.Port = Encode(((TextBox)row.Cells[1].Controls[0]).Text);
                _urlconfig.Site = Encode(((TextBox)row.Cells[2].Controls[0]).Text);
                _urlconfig.SiteUrl = Encode(((TextBox)row.Cells[3].Controls[0]).Text);
                _urlconfig.Channel = Encode(((TextBox)row.Cells[4].Controls[0]).Text);
                _urlconfig.Charset = Encode(((TextBox)row.Cells[5].Controls[0]).Text);
                _urlconfig.ListFormat = Encode(((TextBox)row.Cells[6].Controls[0]).Text);
                _urlconfig.StartPageNo = Encode(((TextBox)row.Cells[7].Controls[0]).Text);
                _urlconfig.EndPageNo = Encode(((TextBox)row.Cells[8].Controls[0]).Text);
                _urlconfig.ListNextPage = Encode(((TextBox)row.Cells[9].Controls[0]).Text);
                _urlconfig.ListNextPageReplace = Encode(((TextBox)row.Cells[10].Controls[0]).Text);
                _urlconfig.ListStep = Encode(((TextBox)row.Cells[11].Controls[0]).Text);
                _urlconfig.ListContent = Encode(((TextBox)row.Cells[12].Controls[0]).Text);
                _urlconfig.ListContentReplace = Encode(((TextBox)row.Cells[13].Controls[0]).Text);
                _urlconfig.DetailLink = Encode(((TextBox)row.Cells[14].Controls[0]).Text);
                _urlconfig.TitleDetail = Encode(((TextBox)row.Cells[15].Controls[0]).Text);
                _urlconfig.TitleDetailReplace = Encode(((TextBox)row.Cells[16].Controls[0]).Text);
                _urlconfig.AuthorDetail = Encode(((TextBox)row.Cells[17].Controls[0]).Text);
                _urlconfig.AuthorDetailReplace = Encode(((TextBox)row.Cells[18].Controls[0]).Text);
                _urlconfig.DateDetail = Encode(((TextBox)row.Cells[19].Controls[0]).Text);
                _urlconfig.DateDetailReplace = Encode(((TextBox)row.Cells[20].Controls[0]).Text);
                _urlconfig.ContentDetail = Encode(((TextBox)row.Cells[21].Controls[0]).Text);
                _urlconfig.ContentDetailReplace = Encode(((TextBox)row.Cells[22].Controls[0]).Text);
                _urlconfig.ContentList = Encode(((TextBox)row.Cells[23].Controls[0]).Text);
                _urlconfig.ContentListReplace = Encode(((TextBox)row.Cells[24].Controls[0]).Text);
                _urlconfig.TagDetail = Encode(((TextBox)row.Cells[25].Controls[0]).Text);
                _urlconfig.TagDetailReplace = Encode(((TextBox)row.Cells[26].Controls[0]).Text);
                _urlconfig.SnatchDate = Encode(((TextBox)row.Cells[27].Controls[0]).Text);
                _urlconfig.SnatchInterval = Encode(((TextBox)row.Cells[28].Controls[0]).Text);
                _urlconfig.SnatchFrequency = Encode(((TextBox)row.Cells[29].Controls[0]).Text);

                #endregion

                //DataSet dataset = new DataSet();
                //dataset.ReadXml(str_url);
                //DataRow dr;
                //dr = dataset.Tables[0].Rows[currentRow];
                //dataset.Tables[0].Rows.Remove(dr);
                //dataset.WriteXml(str_url);

                configmager.UpdateURLConfig(_urlconfig);

                lbResult.Text = "更新成功";
            }
            else
            {
                lbResult.Text = "更新失败";
            }

            GridView1.EditIndex = -1;

            gvUrlConfig_Bind();
        }
コード例 #6
0
ファイル: Item.aspx.cs プロジェクト: wenysky/mydnt
        //private void VerfyUser()
        //{
        //    if (Session["DS"] != null)
        //    {
        //        ds = (DiscuzSession)Session["DS"];
        //    }
        //    else
        //    {
        //        ds = new DiscuzSession(api, secret, url);
        //    }
        //    if (Request.QueryString["auth_token"] == null || Request.QueryString["auth_token"].ToString() == "")
        //    {
        //        Uri uri = ds.CreateToken();
        //        Response.Redirect(uri.ToString());
        //    }
        //    ds.session_info = ds.GetSessionFromToken(Request.QueryString["auth_token"].ToString());
        //}
        private void UrlConfig_Bind()
        {
            //string str_url = Server.MapPath("/") + "URLConfig.xml";
            UrlConfigManager configmager = new UrlConfigManager();
            IList<Entity.URLConfig> list = configmager.GetUrlConfig();

            if (list.Count == 0)
                result = " <tr><td colspan=\"32\" align=\"center\">您还没有配置抓取规则</td></tr>";

            for (int i = 0; i < list.Count; i++)
            {
                if((Request.QueryString["site"].ToString() == list[i].Site) && (Request.QueryString["siteurl"].ToString() == list[i].SiteUrl) && (Request.QueryString["channel"].ToString() == list[i].Channel) && (Request.QueryString["charset"].ToString() == list[i].Charset))
                {
                    result += "<tr><td width=\"30%\">网站名称</td><td width=\"70%\">" + list[i].SiteUrl + "</td></tr><tr><td>网址</td><td>" + list[i].SiteUrl + "</td></tr><tr><td>频道名称</td><td>" + list[i].Channel + "</td></tr><tr><td>列表格式</td><td>" + list[i].ListFormat + "</td></tr><tr><td>列表开始页码</td><td>" + list[i].StartPageNo + "</td></tr><tr><td>列表结束页码</td><td>" + list[i].EndPageNo + "</td></tr><tr><td>下页格式</td><td>" + list[i].ListNextPage + "</td></tr><tr><td>匹配组号</td><td>" + list[i].ListNextPageReplace + "</td></tr><tr><td>每页步长</td><td>" + list[i].ListStep + "</td></tr><tr><td>列表页内容</td><td>" + list[i].ListContent + "</td></tr><tr><td>列表内容匹配组号</td><td>" + list[i].ListContentReplace + "</td></tr><tr><td>详细页连接</td><td>" + list[i].DetailLink + "</td></tr><tr><td>详细页标题</td><td>" + list[i].TitleDetail + "</td></tr><tr><td>详细页标题匹配组号</td><td>" + list[i].TitleDetailReplace + "</td></tr><tr><td>详细页作者</td><td>" + list[i].AuthorDetail + "</td></tr><tr><td>详细页作者匹配组号</td><td>" + list[i].AuthorDetailReplace + "</td></tr><tr><td>详细页日期</td><td>" + list[i].DateDetail + "</td></tr><tr><td>详细页日期匹配组号</td><td>" + list[i].DateDetailReplace + "</td></tr><tr><td>详细页内容</td><td>" + list[i].ContentList + "</td></tr><tr><td>详细页内容匹配组号</td><td>" + list[i].ContentListReplace + "</td></tr><tr><td>详细页Tag</td><td>" + list[i].TagDetail + "</td></tr><tr><td>详细页Tag匹配组号</td><td>" + list[i].TagDetailReplace + "</td></tr><tr><td>抓取最新时间</td><td>" + list[i].SnatchDate + "</td></tr><tr><td>抓取间隔</td><td>" + list[i].SnatchInterval + "</td></tr><tr><td>抓取频率</td><td>" + list[i].SnatchFrequency + "</td></tr>";
                }

                //result += "<tr><td><a href=AddConfig.aspx?action=update&site=" + list[i].Site + "&siteurl=" + list[i].SiteUrl + "&channel=" + list[i].Channel + "&charset=" + list[i].Charset + ">编辑</a></td><td><a href=DeleteConfig.aspx?action=delete&site=" + list[i].Site + "&siteurl=" + list[i].SiteUrl + "&channel=" + list[i].Channel + "&charset=" + list[i].Charset + ">删除</a></td><td>" + list[i].Proxy + "</td><td>" + list[i].Port + "</td><td >" + list[i].Site + "</td><td >" + list[i].SiteUrl + "</td><td>" + list[i].Channel + "</td><td>" + list[i].Charset + "</td><td>" + list[i].ListFormat + "</td><td>" + list[i].StartPageNo + "</td><td>" + list[i].EndPageNo + "</td><td>" + list[i].ListNextPage + "</td><td>" + list[i].ListNextPageReplace + "</td><td>" + list[i].ListStep + "</td><td>" + list[i].ListContent + "</td><td>" + list[i].ListContentReplace + "</td><td>" + list[i].DetailLink + "</td><td>" + list[i].TitleDetail + "</td><td>" + list[i].TitleDetailReplace + "</td><td>" + list[i].AuthorDetail + "</td><td>" + list[i].AuthorDetailReplace + "</td><td>" + list[i].DateDetail + "</td><td>" + list[i].DateDetailReplace + "</td><td>" + list[i].ContentDetail + "</td><td>" + list[i].ContentDetailReplace + "</td><td>" + list[i].ContentList + "</td><td>" + list[i].ContentListReplace + "</td><td>" + list[i].TagDetail + "</td><td>" + list[i].TagDetailReplace + "</td><td>" + list[i].SnatchDate + "</td><td>" + list[i].SnatchInterval + "</td><td>" + list[i].SnatchFrequency + "</td></tr>";

                //result += "<tr><td><a href=UpdateConfig.aspx?action=update&entity=" + list[i] + ">编辑</a></td><td><a href=DeleteConfig.aspx?action=delete&entity=" + list[i] + ">删除</a></td><td>" + list[i].Proxy + "</td><td>" + list[i].Port + "</td><td >" + list[i].Site + "</td><td >" + list[i].SiteUrl + "</td><td>" + list[i].Channel + "</td><td>" + list[i].Charset + "</td><td>" + list[i].ListFormat + "</td><td>" + list[i].StartPageNo + "</td><td>" + list[i].EndPageNo + "</td><td>" + list[i].ListNextPage + "</td><td>" + list[i].ListNextPageReplace + "</td><td>" + list[i].ListStep + "</td><td>" + list[i].ListContent + "</td><td>" + list[i].ListContentReplace + "</td><td>" + list[i].DetailLink + "</td><td>" + list[i].TitleDetail + "</td><td>" + list[i].TitleDetailReplace + "</td><td>" + list[i].AuthorDetail + "</td><td>" + list[i].AuthorDetailReplace + "</td><td>" + list[i].DateDetail + "</td><td>" + list[i].DateDetailReplace + "</td><td>" + list[i].ContentDetail + "</td><td>" + list[i].ContentDetailReplace + "</td><td>" + list[i].ContentList + "</td><td>" + list[i].ContentListReplace + "</td><td>" + list[i].TagDetail + "</td><td>" + list[i].TagDetailReplace + "</td><td>" + list[i].SnatchDate + "</td><td>" + list[i].SnatchInterval + "</td><td>" + list[i].SnatchFrequency + "</td></tr>";

            }

            result += "</table>";
        }
コード例 #7
0
ファイル: AddConfig.aspx.cs プロジェクト: wenysky/mydnt
        protected void Page_Load(object sender, EventArgs e)
        {
            str_path = Server.MapPath("~/URLConfig.xml");

            VerfyUser();

            if (!Page.IsPostBack)
            {
                if (Request.QueryString["action"] == null || Request.QueryString["action"].ToString() == "")
                {
                    return;
                }

                if (Request.QueryString["site"] == null || Request.QueryString["site"].ToString() == "")
                {
                    return;
                }

                if (Request.QueryString["siteurl"] == null || Request.QueryString["siteurl"].ToString() == "")
                {
                    return;
                }

                if (Request.QueryString["channel"] == null || Request.QueryString["channel"].ToString() == "")
                {
                    return;
                }

                if (Request.QueryString["charset"] == null || Request.QueryString["charset"].ToString() == "")
                {
                    return;
                }

                URLConfig uc = new URLConfig();

                uc.Site = Encode(Request.QueryString["site"].ToString().Trim());

                uc.SiteUrl = Encode(Request.QueryString["siteurl"].ToString().Trim());

                uc.Channel = Encode(Request.QueryString["channel"].ToString().Trim());

                uc.Charset = Encode(Request.QueryString["charset"].ToString().Trim());

                if (Request.QueryString["action"].ToString() == "update")
                {
                    txt_site.Text = uc.Site;
                    txt_siteurl.Text = uc.SiteUrl;
                    txt_channel.Text = uc.Channel;
                    txt_charset.Text = uc.Charset;

                    UrlConfigManager ucm = new UrlConfigManager();

                    IList<URLConfig> configlist = ucm.GetUrlConfig();

                    foreach(URLConfig urlconfig in configlist)
                    {
                        if ((urlconfig.Site == uc.Site) && (urlconfig.SiteUrl == uc.SiteUrl) && (urlconfig.Channel == uc.Channel) && (urlconfig.Charset == uc.Charset))
                        {
                            #region
                            txt_proxy.Text = Encode(urlconfig.Proxy);
                            txt_port.Text = Encode(urlconfig.Port);
                            txt_listformat.Text = Encode(urlconfig.ListFormat);
                            txt_listnextpage.Text = Encode(urlconfig.ListNextPage);
                            txt_listnextpagereplace.Text = Encode(urlconfig.ListNextPageReplace);
                            txt_startno.Text = Encode(urlconfig.StartPageNo);
                            txt_endno.Text = Encode(urlconfig.EndPageNo);
                            txt_liststep.Text = Encode(urlconfig.ListStep);
                            txt_listcontent.Text = Encode(urlconfig.ListContent);
                            txt_listcontentreplace.Text = Encode(urlconfig.ListContentReplace);
                            txt_detaillink.Text = Encode(urlconfig.DetailLink);
                            txt_titledetail.Text = Encode(urlconfig.TitleDetail);
                            txt_titledetailreplace.Text = Encode(urlconfig.TitleDetailReplace);
                            txt_authordetail.Text = Encode(urlconfig.AuthorDetail);
                            txt_authordetailreplace.Text = Encode(urlconfig.AuthorDetailReplace);
                            txt_datedetail.Text = Encode(urlconfig.DateDetail);
                            txt_datedetailreplace.Text = Encode(urlconfig.DateDetailReplace);
                            txt_contentdetail.Text = Encode(urlconfig.ContentDetail);
                            txt_contentdetailreplace.Text = Encode(urlconfig.ContentDetailReplace);
                            txt_contentlist.Text = Encode(urlconfig.ContentList);
                            txt_contentlistreplace.Text = Encode(urlconfig.ContentListReplace);
                            txt_tagdetail.Text = Encode(urlconfig.TagDetail);
                            txt_tagdetailreplace.Text = Encode(urlconfig.TagDetailReplace);
                            txt_snatchdate.Text = Encode(urlconfig.SnatchDate);
                            txt_snatchinterval.Text = Encode(urlconfig.SnatchInterval);
                            txt_snatchfrequency.Text = Encode(urlconfig.SnatchFrequency);
                            #endregion
                        }
                    }

                }
            }
        }
コード例 #8
0
ファイル: AddConfig.aspx.cs プロジェクト: wenysky/mydnt
        private void UpdateConfig()
        {
            #region 验证4个必填选项和action
            if (Request.QueryString["action"] == null || Request.QueryString["action"].ToString() == "")
            {
                return;
            }

            if (Request.QueryString["site"] == null || Request.QueryString["site"].ToString() == "")
            {
                return;
            }

            if (Request.QueryString["siteurl"] == null || Request.QueryString["siteurl"].ToString() == "")
            {
                return;
            }

            if (Request.QueryString["channel"] == null || Request.QueryString["channel"].ToString() == "")
            {
                return;
            }

            if (Request.QueryString["charset"] == null || Request.QueryString["charset"].ToString() == "")
            {
                return;
            }

            URLConfig urlconfig = new URLConfig();
            UrlConfigManager ucm = new UrlConfigManager();

            urlconfig.Site = Encode(Request.QueryString["site"].ToString().Trim());

            urlconfig.SiteUrl = Encode(Request.QueryString["siteurl"].ToString().Trim());

            urlconfig.Channel = Encode(Request.QueryString["channel"].ToString().Trim());

            urlconfig.Charset = Encode(Request.QueryString["charset"].ToString().Trim());

            ucm.RemoveChildNode(urlconfig);

            xmldoc = new XmlDocument();
            xmldoc.Load(str_path);

            root = xmldoc.SelectSingleNode("/URLConfig");

            URLConfig uc = new URLConfig();
            uc.Site = txt_site.Text ;
            uc.SiteUrl = txt_siteurl.Text;
            uc.Channel =  txt_channel.Text;
            uc.Charset =  txt_charset.Text ;

            uc.Proxy = Encode(txt_proxy.Text);
            uc.Port = Encode(txt_port.Text);
            uc.ListFormat = Encode(txt_listformat.Text);
            uc.ListNextPage = Encode(txt_listnextpage.Text);
            uc.ListNextPageReplace = Encode(txt_listnextpagereplace.Text);
            uc.StartPageNo = Encode(txt_startno.Text);
            uc.EndPageNo = Encode(txt_endno.Text);
            uc.ListStep = Encode(txt_liststep.Text);
            uc.ListContent = Encode(txt_listcontent.Text);
            uc.ListContentReplace = Encode(txt_listcontentreplace.Text);
            uc.DetailLink = Encode(txt_detaillink.Text);
            uc.TitleDetail = Encode(txt_titledetail.Text);
            uc.TitleDetailReplace = Encode(txt_titledetailreplace.Text);
            uc.AuthorDetail = Encode(txt_authordetail.Text);
            uc.AuthorDetailReplace = Encode(txt_authordetailreplace.Text);
            uc.DateDetail = Encode(txt_datedetail.Text);
            uc.DateDetailReplace = Encode(txt_datedetailreplace.Text);
            uc.ContentDetail = Encode(txt_contentdetail.Text);
            uc.ContentDetailReplace = Encode(txt_contentdetailreplace.Text);
            uc.ContentList = Encode(txt_contentlist.Text);
            uc.ContentListReplace = Encode(txt_contentlistreplace.Text);
            uc.TagDetail = Encode(txt_tagdetail.Text);
            uc.TagDetailReplace = Encode(txt_tagdetailreplace.Text);
            uc.SnatchDate = Encode(txt_snatchdate.Text);
            uc.SnatchInterval = Encode(txt_snatchinterval.Text);
            uc.SnatchFrequency = Encode(txt_snatchfrequency.Text);
            ucm.UpdateURLConfig(uc);
            #endregion
        }