从网站URL获取链接

时间:2016-07-24 17:39:42

标签: c# html web hyperlink

我想要实现的是从this address获取链接,每个壁纸的链接。例如,此链接:https://www.flickr.com/photos/visualechos/14925188846/in/album-72157622467976256/

这是我尝试过的一些内容,但由于某些原因,所有壁纸链接都没有使用这些方法:

using (WebClient client = new WebClient())
{
    string code = client.DownloadString("http://www.flickr.com/photos/visualechos/sets/72157622467976256");
}

-

using (WebClient client = new WebClient())
{
    client.DownloadFile("http://www.flickr.com/photos/visualechos/sets/72157622467976256", @"C:\code.html");
}

-

// Using HtmlAgilityPack
public void GetLinks(string url)
    {
        HtmlWeb hw = new HtmlWeb();
        HtmlAgilityPack.HtmlDocument doc = hw.Load(url);
        foreach (HtmlNode link in doc.DocumentNode.SelectNodes("//a[@href]"))
        {
            LINK.Add(link.GetAttributeValue("href", "link not found"));
        }
    }


private void btnStoreLinks_Click(object sender, EventArgs e)
    {
        GetLinks("https://www.flickr.com/photos/visualechos/sets/72157622467976256");
    }

1 个答案:

答案 0 :(得分:0)

您可以尝试flickr-API,而不是抓取网站,此处记录了这些内容:https://www.flickr.com/services/api/misc.urls.html

您也应该在他们的网站上阅读这个主题:https://www.flickr.com/services/api/auth.oauth.html

之后它非常简单,您可以为新客户端制作第一个OAuth请求 - 然后将请求发送到API。 WebRequest是您正在搜索的图书馆。