ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 4903|回复: 11

[推荐] 建议:网抓大师讲课,应面向主流菜鸟,着重介绍:如何提取源码文件中的字符

[复制链接]

TA的精华主题

TA的得分主题

发表于 2012-8-6 10:52 | 显示全部楼层 |阅读模式
本帖最后由 引子玄 于 2012-8-6 11:12 编辑

建议:网抓大师讲课,应面向主流菜鸟,着重介绍:如何提取源码文件中的字符。
不然,对最广大的业余菜鸟来说,听课就好象在听"之乎者也"的讲课,不知所云。
菜鸟关心的,比如:
1、介绍IE对象的源码文件内容的提取,与XMLHTTP对象的源码文件内容的提取,在网页源码文本的处理上(内容摘取),区别点在哪?
2、如何提取源码文件的需要内容?特别是要介绍下如何分裂(split)?如何替换(replace)?

菜鸟们关心的是要会弄,而不是在不会弄的情况下学"金枪刺喉".




评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-6 10:54 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 引子玄 于 2012-8-6 11:11 编辑

把网页源码中需要的字符,提取弄到EXCEL中,对菜鸟们来说,是一道绕不过去的大弯。

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-6 11:19 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 引子玄 于 2012-8-6 11:35 编辑

如果连最基本的提取操作课程都没有,就好象眼前的河都没法过,河对面的山能爬得上去吗?{:soso_e201:}
很多菜鸟在大师的"网抓系列课程"学习中发急了,俺也一样,但还是闭着眼睛的给“优秀作品”、“感谢帮助”,送鲜花。

TA的精华主题

TA的得分主题

发表于 2012-8-6 11:46 | 显示全部楼层
本帖最后由 蓝天630902 于 2012-8-6 16:11 编辑

对于“IE对象”,应该理解“标签”:http://www.w3school.com.cn/tags/index.asp,这个是初学的地方。
举个a标签的例子,对于本页“http://club.excelhome.net/thread-902462-1-1.html”,里面有一句:

<a id="newspecial" onmouseover="$('newspecial').id = 'newspecialtmp';this.id = 'newspecial';showMenu({'ctrlid':this.id})" onclick="showWindow('newthread', 'forum.php?mod=post&action=newthread&fid=2')" href="javascript:;" title="发新帖"><img src="comiis_19lou/pn_post.png" alt="发新帖" /></a>

看看下面的代码,按F8一步步运行一遍,然后试着去理解:


Sub test()
    Set ie = CreateObject("InternetExplorer.Application")
    ie.navigate "
http://club.excelhome.net/thread-902462-1-1.html"    '打开窗口
    Do Until ie.ReadyState = 4
        DoEvents
    Loop
    ie.Visible = 1    '窗口可见
    ie.Left = -5    '左侧
    ie.Top = -25    '顶部
    ie.Height = 860    '高度
    ie.Width = 1035    '宽度
    ie.MenuBar = 0    '取消菜单栏
    ie.addressbar = 0    '取消地址栏
    ie.Toolbar = 0    '取消工具栏
    ie.StatusBar = 0    '取消状态栏
    ie.resizable = 1    '允许用户改变窗口大小
    ie.Height = 400    '高度
    ie.Width = 500    '宽度
    ie.Left = 300    '左侧
    ie.Top = 300    '顶部
    For i = 92 To 92

    Debug.Print "-----------------"
    Debug.Print i
    Debug.Print "-----------------"
    Debug.Print ie.Document.all.tags("a")(i).onclick
    Debug.Print "-----------------"
    Debug.Print ie.Document.all.tags("a")(i).ID
    Debug.Print "-----------------"
    Debug.Print ie.Document.all.tags("a")(i).onmouseover
    Debug.Print "-----------------"
    Debug.Print ie.Document.all.tags("a")(i).href
    Debug.Print "-----------------"
    Debug.Print ie.Document.all.tags("a")(i).Title
    Debug.Print "-----------------"
    Next i
    ie.Quit
End Sub


TA的精华主题

TA的得分主题

发表于 2012-8-6 11:57 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
所以说,“IE对象”法就像傻瓜相机,简单而十分有效。几乎不需要正则表达式、“Replace” 、“Split”等等额外的手段,就可以得到我们想要的东西。
   

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-6 11:59 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 引子玄 于 2012-8-6 12:01 编辑
蓝天630902 发表于 2012-8-6 11:46 http://www.w3school.com.cn/tags/index.asp,这个是初学的地方。
举 ...


关键的难点:把网页上我们需要的DD,如何提取下来?(如何分裂源码文本)
也是大家所关注的.
IE和XMLHTTP,在分裂提取字符上的不同操作技巧

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-8-6 12:03 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 引子玄 于 2012-8-6 12:28 编辑
蓝天630902 发表于 2012-8-6 11:57
所以说,“IE对象”法就像傻瓜相机,简单而十分有效。几乎不需要正则表达式、“Replace” 、“Split”等等 ...


就是“Replace” 、“Split”如何操作的关键障碍,该如何操作?
这两个函数的基本语法,我想大家基本上都会,但是:就是不知道如何弄下来(源码内容的摘取)?
正是在这个环节,卡了一大批人.

TA的精华主题

TA的得分主题

发表于 2012-8-6 13:05 | 显示全部楼层

RE: 建议:网抓大师讲课,应面向主流菜鸟,着重介绍:如何提取源码文件中的字符

本帖最后由 kangatang 于 2012-8-6 13:20 编辑

首先,你得看得懂网页源代码和一点点JAVAscript
比如一般表格都会这样写
<table>
    <tr><td>我是表格内容</td></tr>
</table>

图像
<img src='http://fufu.ff.com/sd/ss.png' alt='我是图片'>
链接
<a href="http://fufu.ff.com/sd">我是链接</a>

还有其他,比如
<div>我是内容</div>
<h2></h2>
<..... style="font:14;positon:center;".....>

等等。

具体参考http://www.w3school.com.cn/example/html_examples.asp



TA的精华主题

TA的得分主题

发表于 2012-8-6 14:01 | 显示全部楼层
关于split和replace之类的内容,不是网页抓取的知识,是VBA基础培训的知识,这是两回事。
就好比你在大学上复变函数课,就不能指望老师教你怎么解一元二次方程。


找个社会培训班或者在网上找个免费培训班就行了。

TA的精华主题

TA的得分主题

发表于 2012-8-6 14:31 | 显示全部楼层
网上下载一篇介绍正则表达式的文章就可以达到了
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-5-5 16:57 , Processed in 0.047672 second(s), 14 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表