[visual-studio]拉动信息源的数据页

标签: Visual-Studio
发布时间: 2014/3/1 3:51:34
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

好所以我一直有很多麻烦与我工作的几个应用程序上的 Web 浏览器控件。所有人都共享同样的问题。我想要浏览的网页 s 读写页源到一个变量中的文本应用程序。我也需要,以便能够保存文件之后。

一些源代码:

Public Class Form4
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim MyFolderBrowser As New System.Windows.Forms.FolderBrowserDialog
    MyFolderBrowser.Description = "Select the Folder"
    MyFolderBrowser.ShowNewFolderButton = False
    Dim dlgResult As DialogResult = MyFolderBrowser.ShowDialog()
    If dlgResult = Windows.Forms.DialogResult.OK Then
        TextBox1.Text = MyFolderBrowser.SelectedPath
    End If
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    If TextBox1.Text = "" Then
        MessageBox.Show("You have to select a directory!")
    Else
        WebBrowser1.Navigate("www.realmofthemadgod.com/version.txt")
        System.Threading.Thread.Sleep(3000)
        Dim PageSource As String = WebBrowser1.Document.Body.InnerText
        WebBrowser1.Navigate("http://www.realmofthemadgod.com/AssembleeGameClient" & PageSource & ".swf")
    End If
End Sub

结束类

我有一个问题的第一件事是它从来没有等待网页加载拉文档文本之前。我曾尝试许多不同的方式从人们发表的要把这不同的解决方案。奇怪的是它似乎总是工作的话它第二次。

我想要将最后结果网页另存为 swf 到选定的目录如果单击 Button2。

谢谢你一直这到处找不到任何帮助

解决方法 1:

欢迎来到黑暗艺术网刮。第一次关闭,我建议使用WebClient而不 web 浏览器,它具有用于从 web 站点下载数据的离散方法。它看起来像您 version.txt 只包含您想要的数据 (和没有多余的 html) 所以我们可以直接下载它。如果您需要解析 html 我会使用HtmlAgilityPack。未经测试的代码,让你开始:

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    If TextBox1.Text = "" Then
        MessageBox.Show("You have to select a directory!")
    Else
        Using wc as New WebClient()
          Dim version = wc.DownloadString("www.realmofthemadgod.com/version.txt")
          Dim swf = "http://www.realmofthemadgod.com/AssembleeGameClient" + version + ".swf"
          wc.DownloadFile(swf,"c:\temp\myswf.swf")
        End Using
    End If
End Sub
官方微信
官方QQ群
31647020