Visual_Basic 板


LINE

我用VB6寫了一個 抓取網頁的部份是用Inet 讀取xml的部份是自己用一堆字串的函式弄出來的 因為我不知道xml可以用哪些元件去解析 所以就自己動手寫了 流程就是 抓取網頁 -> 把網頁存檔 -> 讀取檔案 -> 開始抓取字串 -> 輸出 抓取網頁的程式碼是之前從網路上看來的 是把原始碼寫入檔案的方法 所以我就把網頁寫入一個1.txt 然後再讀進來 讀進來的部分因為直接讀會亂碼 編碼要採用utf-8 所以就Google到了一篇 http://0rz.tw/EifAi 就直接把裡面的程式碼複製貼上了 程式執行出來的結果是這樣 http://0rz.tw/Wb4Ks 你可以選擇去看我貼在網路上的程式碼 http://0rz.tw/a3zC3 或是我貼在下面的 不過我比較建議用上面的連結看就是了 程式碼如下: Function GetHtml(ByVal str As String) As String If Dir(App.Path & "\1.txt") <> "" Then Kill App.Path & "\1.txt" End If Dim b() As Byte Dim str2 As String '取消所有動作 Form1.Inet1.Cancel '設定通訊協定為 HTTP Form1.Inet1.Protocol = icHTTP '設定 URL 屬性 Form1.Inet1.URL = str '將讀取的 HTML 資料放進一個 byte array. b() = Form1.Inet1.OpenURL(, icByteArray) '建立一個暫存檔來存放抓回來的 html 檔 Open App.Path & "\1.txt" For Binary Access Write As #1 Put #1, , b() Close #1 End Function Private Sub Command1_Click() Call GetHtml("http://www.libertytimes.com.tw/rss/sp.xml") Dim objStream As Object Set objStream = CreateObject("ADODB.Stream") Dim str As String With objStream .Type = 2 .Mode = 3 .Open .Charset = "UTF-8" ' 或其他編碼 .LoadFromFile App.Path & "\1.txt" End With str = objStream.readtext ' str=網頁的原始碼 str = Right(str, Len(str) - 450) '把前面那自由時報的標題之類的去掉 Dim TitleStart As Long '標題字串開始的地方 Dim TitleEnd As Long '結束的地方 Dim LinkStart As Long Dim LinkEnd As Long Dim DateStart As Long Dim DateEnd As Long Dim Title As String ' 標題 Dim Links As String ' 連結 Dim Dates As String '日期 TitleStart = 0 TitleEnd = 0 LinkStart = 0 LinkEnd = 0 DateStart = 0 DateEnd = 1 While InStr(DateEnd + 1, str, "</pubDate>") <> 0 '外圍加個迴圈 '抓取標題開始 TitleStart = InStr(TitleStart + 1, str, "<title>") TitleEnd = InStr(TitleEnd + 1, str, "</title>") Title = Mid(str, TitleStart + 7, TitleEnd - TitleStart - 7) '擷取<"title">到<"/title">之間的字串 '抓取標題結束 '抓取連結開始 LinkStart = InStr(LinkStart + 1, str, "<link>") LinkEnd = InStr(LinkEnd + 1, str, "</link>") Links = Mid(str, LinkStart + 6, LinkEnd - LinkStart - 6) '抓取連結結束 '抓取日期開始 DateStart = InStr(DateStart + 1, str, "<pubDate>") DateEnd = InStr(DateEnd + 1, str, "</pubDate>") Dates = Mid(str, DateStart + 9, DateEnd - DateStart - 9) '抓取日期結束 Text1.Text = Text1.Text & "標題:" & Title & " ,連結:" & Links & " ,日期:" & Dates & vbCrLf Wend End Sub --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.162.46
1F:推 ilsc:大感謝!! 這幾天我在試試看把它轉換成2005的版本看看@@ 04/01 10:22
2F:推 ilsc:如果有不懂的地方 我會再發問 希望大大能繼續協助我 >_< 04/01 10:25
3F:→ Y78:轉換成VB2005 差別大概就是在抓取網頁的地方而已 04/01 23:02







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Tech_Job站內搜尋

TOP