加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何监控网站的变化?

发布时间:2020-12-15 21:51:54 所属栏目:百科 来源:网络整理
导读:所以我已经在这个工作了一个月,但我在网上什么都没发现,所以我觉得每分钟检查一下网站源代码的变化是可能的,但似乎它的源代码每秒都在变化,所以有没有我的编码问题还是有其他方法来监控网站的变化? 这是我的代码: private void Startbtn_Click(object send
所以我已经在这个工作了一个月,但我在网上什么都没发现,所以我觉得每分钟检查一下网站源代码的变化是可能的,但似乎它的源代码每秒都在变化,所以有没有我的编码问题还是有其他方法来监控网站的变化?

这是我的代码:

private void Startbtn_Click(object sender,EventArgs e)
   {

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.google.com");                            
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader source = new StreamReader(response.GetResponseStream());
richTextBox1.Text = source.ReadToEnd();
timer1.Start();
timer1.Interval = 60000;

     }

private void timer1_Tick(object sender,EventArgs e)
    {

        HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.google.com");
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        StreamReader source2 = new StreamReader(response.GetResponseStream());
        RichTextBox checker = new RichTextBox();
        checker.Text = source2.ReadToEnd();
        if (richTextBox1.Text == "")
        {
            richTextBox1.Text = checker.Text;

        }
        else
        {


            if (richTextBox1.Text != checker.Text)
            {
                MessageBox.Show("somthing changed");
                richTextBox1.Text = checker.Text;
            }
            else
            {
                MessageBox.Show("No changes yet!");

            }
        }
    }

解决方法

首先,我建议在必须将页面的实际内容与存储的版本进行比较时:

>将您存储的MD5哈希值与新哈希值的哈希值进行比较(不是每次都是内容)
>请记住,页面中有不断变化的元素,您可能不会将页面内容更改为…

一些服务器将返回Last-Modified标头,您可以使用它来进行比较.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读