【问题标题】:C# click button on website - AjaxC#点击网站上的按钮 - Ajax
【发布时间】:2014-10-17 19:30:19
【问题描述】:

我正在使用 Visual Studio 2013 开发 C# 项目。

我的问题: 有一个网站,您可以在其中搜索某些内容,它会显示一些结果(即 1200 个中的 30 个)。所以,在这个网站的底部有一个按钮,可以显示更多 30 个结果。

我成功读取了当前的 30 个结果(使用 WebClient),但我不知道如何找到获得所有结果的解决方案。

我知道该怎么做,但我不知道该怎么做。我必须单击按钮,直到不再有隐藏的结果。之后,我必须读出 html(使用我现有的代码)。

我在google上搜索了几个小时,发现了一些“无头”浏览器的东西,我也尝试使用Webbrowser的“InvokeMember”-Method,但它不起作用。如果我打印出 HTML,我只会得到 30 个结果。

希望你能理解我的问题。请帮帮我。

谢谢。

【问题讨论】:

    标签: c# ajax button browser webclient


    【解决方案1】:

    WebBrowserControl 滚动到底部

     private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
            {
                webBrowser1.Navigated += (s1, e1) =>
                {
                    if (webBrowser1.Document.Body != null) webBrowser1.Document.Body.ScrollIntoView(false);
                };
            }
    

    或者

    if (theDoc.Body.InnerHtml != null)
                            {
                                try
                                {
                                    webBrowser1.Document.Window.ScrollTo(0, webBrowser1.Document.Body.ScrollRectangle.Height);
                                    timer2.Enabled = true;
                                }
                                catch { }
                            }
                            else
                            {
                                timer2.Enabled = true;
                            }
    

    【讨论】:

      【解决方案2】:

      看来您需要实现分页。 根据您的要求,您可能需要服务器端或客户端。 该链接可能会帮助您决定: StackOverflow Client Side vs Server Side

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-26
        • 1970-01-01
        • 2016-03-30
        • 2019-11-28
        • 1970-01-01
        相关资源
        最近更新 更多