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灯, 水草

请输入看板名称,例如:BabyMother站内搜寻

TOP