C#获取网站的HTML代码不起作用
我一直在尝试下载某个网站的html源代码,更准确地说,是从以下URL下载的: 当我把这个URL放到我的Webbrowser(Firefox)中时,它会把我带到Steam Market的第10页,因为在URL的末尾,它写着“p10”。当我把10换成12时,我就到了第12页。但是,当我试图用C#中的代码下载第10页时C#获取网站的HTML代码不起作用,c#,html,webclient,C#,Html,Webclient,我一直在尝试下载某个网站的html源代码,更准确地说,是从以下URL下载的: 当我把这个URL放到我的Webbrowser(Firefox)中时,它会把我带到Steam Market的第10页,因为在URL的末尾,它写着“p10”。当我把10换成12时,我就到了第12页。但是,当我试图用C#中的代码下载第10页时 它似乎忽略了url的这一部分。不管我用什么数字替换10,我总是得到相同的结果。为什么?您会得到相同的结果,因为Steam的页面实际上使用AJAX获取结果,这意味着您想要的内容不在您获
它似乎忽略了url的这一部分。不管我用什么数字替换10,我总是得到相同的结果。为什么?您会得到相同的结果,因为Steam的页面实际上使用AJAX获取结果,这意味着您想要的内容不在您获得的页面中 这是您在第10页时浏览器获取的URL(结果为):
请注意此URL中的
start
参数,它是根据页码计算的。您会得到相同的结果,因为Steam的页面实际上使用AJAX获取结果,这意味着您想要的内容不在您获得的页面中
这是您在第10页时浏览器获取的URL(结果为):
请注意此URL中的
start
参数,它是根据页码计算出来的。有什么简单的方法可以解决这个问题吗?我的意思是让页面先获取结果,然后下载源代码?@DealerJoe:是的。只需直接从我的答案中引用的URL获取结果。但这意味着解析JSON而不是HTML。有什么简单的方法可以解决这个问题吗?我的意思是让页面先获取结果,然后下载源代码?@DealerJoe:是的。只需直接从我的答案中引用的URL获取结果。但这意味着解析JSON而不是HTML。
WebClient webClient = new WebClient();
string pageURL = downloadURL + getURLEnding(currentPage);
string html = webClient.DownloadString(pageURL);
var doc = new HtmlDocument();
doc.LoadHtml(html);
http://steamcommunity.com/market/search/render/?query=&start=90&count=10&search_descriptions=0&sort_column=price&sort_dir=desc&appid=730&category_730_ItemSet%5B%5D=any&category_730_TournamentTeam%5B%5D=any&category_730_Weapon%5B%5D=any&category_730_Quality%5B%5D=tag_normal