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

[IE类操作] 如何查找到网页中某一行文字里其中一部分的字符呢?[已解决]

  [复制链接]
发表于 2010-9-27 20:49:32 | 显示全部楼层 |阅读模式
本帖最后由 lotsunhim 于 2010-9-30 18:44 编辑

#include <IE.au3>
$oIE = _IECreate("http://www.autoitx.com/forum-4-1.html")

$sMyString = "规范发帖"
$oLinks = _IELinkGetCollection($oIE)
For $oLink in $oLinks
        $sLinkText = _IEPropertyGet($oLink, "innerText")
    If StringInStr($sLinkText, $sMyString) Then
                _IEAction($oLink, "click")
                ExitLoop
        EndIf
Next
现在想增加一个操作,查找网页中的内容,例如贴子第一句“论坛自改版及整顿以来,发帖规范了许多,让大家获得了更为准确的资料及良好的论坛秩序,”
然后得到当面这一行后边所有的“这是有目共睹的。”这一句字符,关于字符操作不清楚,望大家指点一下啊。
发表于 2010-9-27 21:32:44 | 显示全部楼层
学习。。。。。。。。
发表于 2010-9-28 09:39:03 | 显示全部楼层
#include <ie.au3>
$oIE = _IECreate('http://www.autoitx.com/thread-18544-1-1.html',0,0)
$oText = _IEBodyReadText($oIE)
FileWrite("temp.txt",$oText)
_IEQuit($oIE)
$str = FileReadLine("temp.txt",16)
FileDelete('temp.txt')
MsgBox(0,"",$str)
发表于 2010-9-28 10:06:12 | 显示全部楼层
#include <Array.au3>
#include <INet.au3>
$Source = _INetGetSource('http://www.autoitx.com/thread-18544-1-1.html')
$SR=StringRegExp($Source,'.+\>([^\s|\w]?.+)\。',3)
_ArrayDisplay($SR,"")
MsgBox(0,"",$SR[3])
 楼主| 发表于 2010-9-28 11:51:11 | 显示全部楼层
要根据前面“论坛自改版及整顿以来,发帖规范了许多,让大家获得了更为准确的资料及良好的论坛秩序,”得到“这是有目共睹的。”StringRegExp应该怎么匹配呢,你给的代码只得到“论坛自改版及整顿以来,发帖规范了许多,让大家获得了更为准确的资料及良好的论坛秩序,这是有目共睹的。”前面这句关键词是固定的,后面的这句“这是有目共睹的。”非固定,有时是“这是有目共睹。”或是“是有目共睹的。”,怎么准确地得到后边可能非固定的文字呢。
发表于 2010-9-28 12:53:01 | 显示全部楼层
试试~
#include <INet.au3>
$Source = _INetGetSource('http://www.autoitx.com/thread-18544-1-1.html')
$key = '论坛自改版及整顿以来,发帖规范了许多,让大家获得了更为准确的资料及良好的论坛秩序,'
$str = StringRegExpReplace($Source, '(?s).+' & $key & '(.*?)(?=\<br />).+', '$1')
MsgBox(0, '', '"' & $str & '"')
 楼主| 发表于 2010-9-28 13:31:33 | 显示全部楼层
本帖最后由 lotsunhim 于 2010-9-28 14:08 编辑
试试~
afan 发表于 2010-9-28 12:53



    可以了,感谢啦!补充问一下,怎么根据链接文字得到URL地址啊?例如根据“提问交流”得到"http://www.autoitx.com/forum-4-1.html"这个链接呢?
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-23 12:54 , Processed in 0.075745 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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