• 采集系统万能正则表达式


    由于经常要写一些采集的程序,下面的三个函数是采集中的很常用的函数。姑且叫采集系统万能正则表达式吧。全部源码见
    http://www.softbk.com/news.asp?id=3564     欢迎一起交流

    //获取页面的html源码
     public  string GetHtmlSource(string Url, string charset)
            
    {
                
    if (charset == "" || charset == null) charset = "gb2312";
                
    string text1 = "";
                
    try
                
    {
                    HttpWebRequest request1 
    = (HttpWebRequest)WebRequest.Create(Url);
                    HttpWebResponse response1 
    = (HttpWebResponse)request1.GetResponse();
                    Stream stream1 
    = response1.GetResponseStream();
                    StreamReader reader1 
    = new StreamReader(stream1, Encoding.GetEncoding(charset));
                    text1 
    = reader1.ReadToEnd();
                    stream1.Close();
                    response1.Close();
                }

                
    catch (Exception exception1)
                
    {
                }

                
    return text1;
            }


     public string SniffwebCode(string code, string wordsBegin, string wordsEnd)
            
    {
                
    string NewsTitle = "";
                Regex regex1 
    = new Regex("" + wordsBegin + @"(?<title>[\s\S]+?)" + wordsEnd + "", RegexOptions.Compiled | RegexOptions.IgnoreCase);
                
    for (Match match1 = regex1.Match(code); match1.Success; match1 = match1.NextMatch())
                
    {
                    NewsTitle 
    = match1.Groups["title"].ToString();
                }

                
    return NewsTitle;

            }

     public ArrayList SniffwebCodeReturnList(string code, string wordsBegin, string wordsEnd)
            
    {
                ArrayList urlList 
    = new ArrayList();
                
    //string NewsTitle = "";
                Regex regex1 = new Regex("" + wordsBegin + @"(?<title>[\s\S]+?)" + wordsEnd + "", RegexOptions.Compiled | RegexOptions.IgnoreCase);
                
    for (Match match1 = regex1.Match(code); match1.Success; match1 = match1.NextMatch())
                
    {
                    urlList.Add(match1.Groups[
    "title"].ToString());
                }

                
    return urlList;

            }
  • 相关阅读:
    开源项目之Android StandOut(浮动窗口)
    小智慧7
    安卓学习
    asp.net学习Request和Response的其他属性
    bash中的转义
    POJ 1833 排列
    Django点滴(四)ORM对象存取
    POJ 1681 Painter's Problem
    linux2.6.32在mini2440开发板上移植(21)之WebServer服务器移植
    [gkk传智]static与多态及向下向上转型,及多态调用总结
  • 原文地址:https://www.cnblogs.com/wuyisky/p/978258.html
Copyright © 2020-2023  润新知