【问题标题】:How to get a string from a dynamic web page that is refreshed by scrolling down如何从通过向下滚动刷新的动态网页中获取字符串
【发布时间】:2018-05-15 16:46:12
【问题描述】:

我想从通过向下滚动刷新的动态网页获取字符串。这不起作用:

WebClient web = new WebClient();
string data = web.DownloadString("https://www.radiojavan.com/mp3s/browse/featured/all");

【问题讨论】:

  • 这叫做延迟加载抓取,我不确定在c#中是否那么容易。尝试在这里查看 Python:codereview.stackexchange.com/questions/167327/…
  • 这也叫懒问题,你做过什么研究,你试过什么,贴1句2行代码是低质量问题
  • 为了在未来帮助您,Jon Skeet 为您提供了便利codeblog.jonskeet.uk/2012/11/24/…
  • 问题在于动态加载是由 DOM 操作(滚动)结合 javascript 触发的,而简单的 Web 请求则没有这些功能。

标签: c# webclient downloadstring


【解决方案1】:

加载部分页面:

WebClient web = new WebClient();
var data = string.Empty;

for(var page = 1; page < 10; page++){
  var url = $"https://www.radiojavan.com/mp3s/content?type=featured&query=all&page={page}"

  data += web.DownloadString("https://www.radiojavan.com/mp3s/browse/featured/all");

}

【讨论】:

    猜你喜欢
    • 2012-03-07
    • 1970-01-01
    • 2020-03-22
    • 1970-01-01
    • 2018-09-14
    • 1970-01-01
    • 1970-01-01
    • 2017-02-19
    • 2016-02-21
    相关资源
    最近更新 更多