我想要实现的是从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");
}
答案 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
是您正在搜索的图书馆。