그래, 내가 작업하고있는 몇 가지 응용 프로그램에서 웹 브라우저 컨트롤에 많은 문제가있었습니다. 모두 동일한 문제를 공유합니다. 응용 프로그램에서 웹 페이지를 탐색하도록하려면 페이지 소스의 텍스트를 변수에 쓰십시오. 나중에 파일을 저장할 수 있어야합니다.페이지 소스에서 정보를 가져 오기
일부 소스 코드 :
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
최종 클래스
내가 가진 문제가 발생하고 우선 웹 페이지는 문서의 텍스트를 당겨 전에로드하는 것이 결코 대기 없다는 것입니다. 나는이 문제를 해결하기 위해 사람들이 게시 한 여러 가지 해결책에서 여러 가지 방법을 시도했다. 이상하게도, 나는 그것을 두 번하면 항상 효과가있는 것처럼 보입니다.
그리고 Button2를 클릭하면 최종 결과 웹 페이지를 swf로 저장하려고합니다. 어떤 도움
덕분에 나는 웹 스크래핑의 어두운 예술이 사방
빠른 응답 감사합니다. 나는 집에 도착하자 마자 이것을 체크 할 것이다. 또한 hlete 어플리케이션에서 html 배열을 파싱 할 필요가 있으므로 언급 한 팩을 살펴 보겠습니다. WebClient가 백그라운드에서 작동합니까, 아니면 저장 대화 상자가 앞에 오게됩니까? – Matt
배경에서 작동합니다. 요청하는 동안 UI를 차단하지 않으려는 경우 비동기 버전도 있습니다. –
이것은 완벽하게 작동합니다. – Matt