找回密码
 加入
搜索
查看: 7746|回复: 6

[IE类操作] 如何提取网页指定部分的文字内容

  [复制链接]
发表于 2011-3-15 13:02:50 | 显示全部楼层 |阅读模式
如图
提取
http://top.baidu.com/ 上的关键字


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2011-3-15 19:46:02 | 显示全部楼层
用正则!!!
发表于 2011-3-15 19:50:24 | 显示全部楼层
先看HTML源代码吧  看是哪个标签里面 再去取值
发表于 2011-3-15 20:41:06 | 显示全部楼层
本帖最后由 easied 于 2011-3-16 06:54 编辑

inetget获取html代码.
然后使用正则和字符串函数取得具体数据.
#include <Array.au3>
InetGet("http://top.baidu.com/buzz.php?p=top10", @TempDir & "\2.html", 1)
$sString = FileRead(@TempDir & "\2.html")
$sRegExp = 'target="_blank">\S*</a></td>'
$asResult = StringRegExp($sString, $sRegExp, 3)
For $i = 0 To UBound($asResult) - 1 Step 1
        $asResult[$i] = StringMid($asResult[$i], StringInStr($asResult[$i], '>')+1, StringInStr($asResult[$i], '<') - StringInStr($asResult[$i], '>') - 1)
Next
_ArrayDisplay($asResult)
上面函数正则还是有些问题,碰到有空格的就不能匹配了.
另外,似乎可以把stringmid的部分也直接在正则那一行里面匹配了,请高手指点...
发表于 2011-3-15 21:50:34 | 显示全部楼层
好贴,下次对网页准备好好研究下
发表于 2011-3-16 00:40:41 | 显示全部楼层
本帖最后由 easied 于 2011-3-16 06:54 编辑
inetget获取html代码.
然后使用正则和字符串函数取得具体数据.上面函数正则还是有些问题,碰到有空格的就不 ...
easied 发表于 2011-3-15 20:41
#include <Array.au3>
InetGet("http://top.baidu.com/buzz.php?p=top10", @TempDir & "\2.html", 1)
$sString = FileRead(@TempDir & "\2.html")
$sRegExp = 'target="_blank">[^<]+</a></td>'
$asResult = StringRegExp($sString, $sRegExp, 3)
For $i = 0 To UBound($asResult) - 1 Step 1
        $asResult[$i] = StringMid($asResult[$i], StringInStr($asResult[$i], '>')+1, StringInStr($asResult[$i], '<') - StringInStr($asResult[$i], '>') - 1)
Next
_ArrayDisplay($asResult)
带空格的匹配自己搞定了.等待高手把字符串操作的也整合到正则计算中...
发表于 2011-3-17 11:17:18 | 显示全部楼层
good.thanks!!!!!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-6-17 20:26 , Processed in 0.082642 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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