从页面上的链接中检索HTML

时间:2012-10-24 11:25:22

标签: c# html streamwriter

我使用以下方法从我的网站检索源代码 -

class WorkerClass1
{
    public static string getSourceCode(string url)
    {
        HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
        HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
        StreamReader sr = new StreamReader(resp.GetResponseStream());
        string sourceCode = sr.ReadToEnd();
        sr.Close();
        return sourceCode;
    }
}

然后实现WorkerClass1 -

private void button1_Click(object sender, EventArgs e)
    {
        string url = textBox1.Text;
        string sourceCode = WorkerClass1.getSourceCode(url);
        StreamWriter sw = new StreamWriter(@"path");
        sw.Write(sourceCode);
        sw.Close();

    }

这很好用并从我的主页检索HTML,但是一旦检索到第一页,我想要关注的页面底部有链接。

有没有办法可以修改我当前的代码来执行此操作?

1 个答案:

答案 0 :(得分:1)

当然可以。

我要做的是使用寻找链接的正则表达式来阅读HTML。对于每个匹配,我会将这些链接放在队列或类似的数据结构中,然后使用相同的方法查看该源。

考虑使用HTMLAgilityPack进行解析,它可能会更容易,即使使用Google查找链接应该非常简单。