已寫好,經(jīng)過測試,一個WEBBROWSER控件,一個LISTBOX控件,我也初學習VB.NET,共同進步
成都創(chuàng)新互聯(lián)專注于方正網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供方正營銷型網(wǎng)站建設,方正網(wǎng)站制作、方正網(wǎng)頁設計、方正網(wǎng)站官網(wǎng)定制、微信小程序定制開發(fā)服務,打造方正網(wǎng)絡公司原創(chuàng)品牌,更為您提供方正網(wǎng)站排名全網(wǎng)營銷落地服務。
Public Class Form1
Private Sub Form1_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Activated
WebBrowser1.Visible = False
WebBrowser1.Navigate(";_fmw.i._0.c=_fmw.i._0.ca=_fmw.i._0.cat=_fmw.i._0.k=%B7%FE%D7%B0_fmw.i._0.t=_fmw.i._0.p=1_fmw.i._0.pa=20_fmw.i._0.u=_fmw.i._0.s=event_submit_do_search_2=true")
End Sub
Private Sub WebBrowser1_DocumentCompleted(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
Dim tmp As String
tmp = WebBrowser1.Document.Body.InnerHtml
Dim a() As String
a = Split(tmp, "群號:")
For i = 0 To UBound(a)
If Trim(Strings.Mid(a(i), 1, 6)) = "/SPAN" Then
tmp = Strings.Mid(a(i), Strings.InStr(a(i), "('") + 2, 20)
tmp = Strings.Mid(tmp, 1, Strings.InStr(tmp, "',''") - 1)
ListBox1.Items.Add(tmp)
End If
Next
End Sub
End Class
用正則表達式吧,首先導入命名空間System.Text.RegularExpressions,用Webbrowser載入頁面,使用vb.net的代碼如下:
Dim iTable As String = WebBrowser1.Document.Body.InnerHtml
Dim str_xm1 As String = Regex.Match(Regex.Matches(iTable, "td.*?/td").Item(6).Value, ".*?").Value
這樣str_xm1就是你要的內(nèi)容。
我前兩天剛做過類似的事情,down了一個網(wǎng)站的產(chǎn)品庫到數(shù)據(jù)庫里。
第一步:把所有頁面下載到本地
第二步:分析頁面結(jié)構(gòu)
第三步:通過正則表達式不斷去掉沒用的內(nèi)容,找到規(guī)律做成2緯數(shù)組
第四步:當有二維數(shù)組的時候,就什么都有了。
Public Function webCaptureContent(ByVal mWebsiteUrl As String, ByVal mWebsiteType As Boolean) As String
'啟動一次具體的數(shù)據(jù)采集工作,返回采集到的HTML內(nèi)容:要求必須輸入帶://的全地址數(shù)據(jù)
On Error Resume Next
Dim Str_WebContent As String = "請輸入查找網(wǎng)站地址."
Dim wb As WebClient = New WebClient() '//創(chuàng)建一個WebClient實例
If mWebsiteUrl.IndexOf("://") 0 Then
'//獲取或設置用于對向 Internet 資源的請求進行身份驗證的網(wǎng)絡憑據(jù)。(可有可無)
wb.Credentials = CredentialCache.DefaultCredentials
'//從資源下載數(shù)據(jù)并返回字節(jié)數(shù)組。(加@是因為網(wǎng)址中間有"/"符號)
Dim pagedata As Object = wb.DownloadData(mWebsiteUrl)
'//轉(zhuǎn)換字符
If mWebsiteType Then
Str_WebContent = Encoding.Default.GetString(pagedata)
Else
Str_WebContent = Encoding.UTF8.GetString(pagedata)
End If
End If
Return Str_WebContent '提取出來新聞內(nèi)容,刪除Body前后的多余內(nèi)容,同時補充上該 Body標記,形成完整的內(nèi)容 Str_WebContent '
End Function