作者:绿色风
分类:
时间:2022-08-17
浏览:134
楼主 kevinchengcw |
Q: 如何用vba代码获取ET首页指定类型的图片地址? A: 代码如下:
- Sub test()
- Dim Dic As Object, Str$, Str2$, RegEx As Object, mType$, mMatch
- URL = "http://www.exceltip.net/" 'ET首页地址
- mType = "jpg" '要获取的图片类型
- Set Dic = CreateObject("scripting.dictionary") '创建字典项目
- Set RegEx = CreateObject("vbscript.regexp") '创建正则项目
- With RegEx
- .Global = True '全局有效
- .MultiLine = True '多行有效
- .ignorecase = True '忽略大小写
- .Pattern = "src\=""([.]*/)*([\S]+\." & mType & ")""" '设定匹配规则
- End With
- With CreateObject("Msxml2.XMLHTTP") '创建网页项目
- .Open "GET", URL, False '设置获取模式
- .Send '发送请求
- Str = StrConv(.responseBody, vbUnicode) '得到网页源代码
- If RegEx.test(Str) Then '判断是否有匹配项
- For Each mMatch In RegEx.Execute(Str) '循环各个匹配项
- Str2 = mMatch.submatches(1) '截取图片地址
- If Not Str2 Like "http://*" Then Str2 = IIf(Right(URL, 1) = "/", Left(URL, Len(URL) - 1), URL) & "/" & Str2 '如果地址不包含网站地址开头则添加
- Dic(Str2) = "" '添加得到的地址到字典中
- Next mMatch
- Columns(1).Clear '清空A列
- [a1].Resize(Dic.Count, 1) = Application.Transpose(Dic.keys) '将得到的地址放入A列
- Else
- Msgbox "未找到内容"
- End If
- End With
- Set Dic = Nothing '清空项目
- Set RegEx = Nothing
- End Sub
|
2楼 Rongson_Chart |
学习 |
免责声明
有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素,
经与ExcelTip.Net站长Apolloh商议并征得其同意,
现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示,
供有需要的人士查询使用,也慰缅曾经的论坛时代。
所示各个帖子的原作者如对版权有异议,
可与本人沟通提出,或于本站点留言,我们会尽快处理。
在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一