private List <ecar_list> GetList(string url) { #region//具体业务代码 List <ecar_list> list = new List <ecar_list>(); string source = HtmlHandle.HtmlCode(url); if (source != "") { int start = source.IndexOf("<!--筛选结果 开始-->"); int end = source.IndexOf("<!--筛选结果 结束-->"); string data = source.Substring(start, end - start); data = data.Replace("\n", "").Replace(" ", "").Replace("\r", ""); MatchCollection mu = BLL.Matchs(data, Rule.Ueritem); foreach (Match u in mu) { string car = BLL.One_Match(u.ToString(), Rule.listcar); MatchCollection mc = BLL.Matchs(u.ToString(), Rule.herfItem); foreach (Match m in mc) { ecar_list model = new ecar_list(); model.car = car; model.url = m.Groups[1].Value; model.title = m.Groups[2].Value; list.Add(model); } } } #endregion return(list); }
private List <ecar_list> GetList(string url, RegexList_Model RLmodel) { #region//具体业务代码 List <ecar_list> list = new List <ecar_list>(); string source = HtmlHandle.HtmlCode(url); if (source != "") { //int start = source.IndexOf("<!--筛选结果 开始-->"); //int end = source.IndexOf("<!--筛选结果 结束-->"); //string data = source.Substring(start, end - start); //data = data.Replace("\n", "").Replace(" ", "").Replace("\r", ""); string data = source.Replace("\n", "").Replace(" ", "").Replace("\r", ""); MatchCollection mu = List_BLL.Matchs(data, RegexBLL.GenerateRegex(RLmodel.listRule)); foreach (Match u in mu) { string car = List_BLL.One_Match(u.ToString(), RegexBLL.GenerateRegex(RLmodel.carRule)); MatchCollection mc = List_BLL.Matchs(u.ToString(), RegexBLL.GenerateRegex(RLmodel.userRule)); foreach (Match m in mc) { ecar_list model = new ecar_list(); model.rgid = ID; model.car = car; model.url = RegexBLL.One_Match(m.Groups[0].Value, RegexBLL.GenerateRegex(RLmodel.urlRule)); model.title = RegexBLL.One_Match(m.Groups[0].Value, RegexBLL.GenerateRegex(RLmodel.titleRule)); list.Add(model); } } } #endregion return(list); }
private string GetList(string url) { #region//具体业务代码 string showdata = ""; string source = HtmlHandle.HtmlCode(url); if (source != "") { string data = source.Replace("\n", "").Replace(" ", "").Replace("\r", ""); List <ecar_list> list = new List <ecar_list>(); MatchCollection mu = BLL.Matchs(data, RegexBLL.GenerateRegex(reg_list)); foreach (Match u in mu) { string car = BLL.One_Match(u.ToString(), RegexBLL.GenerateRegex(reg_car)); MatchCollection mc = BLL.Matchs(u.ToString(), RegexBLL.GenerateRegex(reg_user)); foreach (Match m in mc) { ecar_list model = new ecar_list(); model.car = car; model.url = RegexBLL.One_Match(m.Groups[0].Value, RegexBLL.GenerateRegex(reg_url)); model.title = RegexBLL.One_Match(m.Groups[0].Value, RegexBLL.GenerateRegex(reg_title)); list.Add(model); } } foreach (ecar_list m in list) { showdata = showdata + m.car + "\n" + m.url + "\n" + m.title + "<br>"; } } #endregion return(showdata); }
/// <summary> /// 保存列表 /// </summary> /// <param name="model"></param> /// <returns></returns> public int Setlist(ecar_list model) { string sql = "insert into UrlList (Series,Car,Titile,Url,SourceWeb,RGid) values(@Series,@Car,@Titile,@Url,@SourceWe,@RGid)"; SqlParameter[] pars = new SqlParameter[] { new SqlParameter("@Series", model.series), new SqlParameter("@Car", model.car), new SqlParameter("@Titile", model.title), new SqlParameter("@Url", model.url), new SqlParameter("@SourceWe", model.source), new SqlParameter("@RGid", model.rgid) }; return(BLL.ExecuteNonQuery(sql, pars)); }
private string GetList(string url) { #region//具体业务代码 string showdata = ""; string source = HtmlHandle.HtmlCode(url); if (source != "") { #region //int start = source.IndexOf("<!--筛选结果 开始-->"); //int end = source.IndexOf("<!--筛选结果 结束-->"); //string data = source.Substring(start, end - start); //data = data.Replace("\n", "").Replace(" ", "").Replace("\r", ""); #endregion string data = source.Replace("\n", "").Replace(" ", "").Replace("\r", ""); List <ecar_list> list = new List <ecar_list>(); MatchCollection mu = BLL.Matchs(data, RegexBLL.GenerateRegex(liststart + "([\\S\\s]*?)" + listend)); foreach (Match u in mu) { string car = BLL.One_Match(u.ToString(), RegexBLL.GenerateRegex(carstart + "([\\S\\s]*?)" + carend)); MatchCollection mc = BLL.Matchs(u.ToString(), RegexBLL.GenerateRegex(userstart + "([\\S\\s]*?)" + userend)); foreach (Match m in mc) { ecar_list model = new ecar_list(); model.car = car; model.url = RegexBLL.One_Match(m.Groups[0].Value, RegexBLL.GenerateRegex(urlstart + "([\\S\\s]*?)" + urlend)); model.title = RegexBLL.One_Match(m.Groups[0].Value, RegexBLL.GenerateRegex(titlestart + "([\\S\\s]*?)" + titleend)); list.Add(model); } } #region //MatchCollection mu = BLL.Matchs(data, Rule.Ueritem); //foreach (Match u in mu) //{ // string car = BLL.One_Match(u.ToString(), Rule.listcar); // MatchCollection mc = BLL.Matchs(u.ToString(), Rule.herfItem); // foreach (Match m in mc) // { // ecar_list model = new ecar_list(); // model.car = car; // model.url = m.Groups[1].Value; // model.title = m.Groups[2].Value; // list.Add(model); // } //} #endregion foreach (ecar_list m in list) { showdata = showdata + m.car + "\n" + m.url + "\n" + m.title + "<br>"; } } #endregion return(showdata); }
protected void Page_Load(object sender, EventArgs e) { string url = "http://car.bitauto.com/xinbaolai/koubei/"; string data = HtmlHandle.HtmlCode(url); //data=data.Replace(" ","").Replace("\r\n\r\n","\r\n").Replace("\r\n\r\n","\r\n"); int start = data.IndexOf("<!--筛选结果 开始-->"); int end = data.IndexOf("<!--筛选结果 结束-->"); string show = data.Substring(start, end - start); show = show.Replace("\n", "").Replace(" ", "").Replace("\r", ""); List <ecar_list> list = new List <ecar_list>(); string showdata = ""; //string[] sArray = show.Split( new string[]{"<divclass=\"kb-list-box\">","</div></div></div></div>"}, StringSplitOptions.RemoveEmptyEntries); string regx = "<divclass=\"titbox\"><a[\\S\\s]*?>([\\S\\s]*?)</a>"; string regq = "<divclass=\"titbox\"><ahref=\"([\\S\\s]*?)\"targe"; #region //业务代码 MatchCollection mu = Regex_BLL.Matchs(show, Rule.Ueritem); foreach (Match u in mu) { ecar_list model = new ecar_list(); model.car = Regex_BLL.One_Match(u.ToString(), Rule.listcar); MatchCollection mc = Regex_BLL.Matchs(u.ToString(), Rule.herfItem); foreach (Match m in mc) { model.url = Regex_BLL.One_Match(m.Groups[0].Value, Regex_BLL.GenerateRegex(regq)); model.title = Regex_BLL.One_Match(m.Groups[0].Value, Regex_BLL.GenerateRegex(regx)); list.Add(model); } } #endregion SavetoDb("http://car.bitauto.com/leikesasies/koubei/948884/"); #region//弃用 //MatchCollection mu = herfItem.Matches(show); //foreach (Match u in mu) //{ // ecar_list model = new ecar_list(); // model.car = listcar.Match(u.ToString()).Groups[1].Value; // MatchCollection mc = herfItem.Matches(u.ToString()); // foreach (Match m in mc) // { // model.url = m.Groups[1].Value; // model.title = m.Groups[2].Value; // list.Add(model); // } //} #endregion #region//弃用 //for (int i = 1; i < sArray.Length; i++) //{ // ecar_list model = new ecar_list(); // int titstart = sArray[i].IndexOf("<divclass=\"titbox\">"); // int titend = sArray[i].IndexOf("</div><pclass"); // if (titstart != -1) // { // model.title = sArray[i].Substring(titstart, titend - titstart); // } // int urlstart = sArray[i].IndexOf("ahref=\""); // int urlend = sArray[i].IndexOf("\"rel"); // if (urlstart != -1) // { // model.url = sArray[i].Substring(urlstart, urlend - urlstart); // } // int carstart = sArray[i].IndexOf("<h6>"); // int carend = sArray[i].IndexOf("</h6>"); // if (carstart != -1) // { // model.car = sArray[i].Substring(carstart, carend - carstart); // } // list.Add(model); //} #endregion foreach (ecar_list m in list) { showdata = showdata + m.car + "\n" + m.url + "\n" + m.title + "<br>"; } Response.Write(showdata); //string carPy = "baomax5"; //GetUrl Geturl = new demo.GetUrl(GetUrlList); //Thread UrlThread = new Thread(new ThreadStart(Geturl(carPy))); //UrlThread.Start(); //savetodb stod = new savetodb(GotoSave); //Thread StoDb = new Thread(new ThreadStart(stod(list))); //StoDb.Start(); }
/// <summary> /// 保存url(单条) /// </summary> /// <param name="model"></param> /// <returns></returns> public int SetList(ecar_list model) { return(BLL.Setlist(model)); }