首页 > 解决方案 > 在 C# 中从 Web 获取 HTML 字符串,但不包含数据部分

问题描述

我正在尝试在我的 UWP 应用程序中从网页( https://finance.naver.com/sise/sise_trans_style.nhn )获取数据。
我在我的项目中编写了以下源代码。

public class MainPageViewModel : Observable
{
    public string urlAddress = "https://finance.naver.com/sise/sise_trans_style.nhn";
    public string data { get; set; }

    public MainPageViewModel()
    {
        ButtonClick = new RelayCommand(Click);
    }

    public async void Click()
    {
        HttpClient httpClient = new HttpClient();
        Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
        var result = await httpClient.GetStringAsync(new Uri(urlAddress));
        data = result;
        OnPropertyChanged("data");
    }
    public RelayCommand ButtonClick { get; set; }
}

但是,问题是,我没有得到文档的数据部分。下图描述了我想要获取的文档部分。
我想得到的部分

在“数据”变量中,我得到没有数据的文档对我来说是最重要的部分。我可以得到其他 html 部分。

我试图弄清楚数据来自哪里,或者哪个来源可以帮助我获取数据。但我失败了。
数据是由 javascript 生成的吗?.. ajax ...而且,我如何从该网页获取数据?..如果我下次遇到这种问题,我该如何找出原因?

(编辑)添加了 HTML 源代码。和更具体的。

当我看到带有源代码的 HTML DOCS 时,我可以获得以下内容。

<div class="box_type_m">
    <iframe name="time" src="/sise/investorDealTrendTime.nhn?bizdate=20181005&sosok=" width="100%"  height="380" marginheight="0" bottommargin="0" topmargin="0" SCROLLING="no" frameborder="0" title="시간별 순매수"></iframe>
</div>  

但 iframe 有另一个 html 源(包含头部和身体)。

标签: c#htmlparsinguwpweb-crawler

解决方案



推荐阅读