t87564833 发表于 2010-9-15 15:02:29

如何获取http://www.verycd.com/上的名言?【已解决!】

本帖最后由 t87564833 于 2010-9-16 10:37 编辑

如题:http://www.verycd.com/上的名言刷新一次变一次,想弄个程序,运行一次就读取一次名言,然后写到INI文件里。

早上用
_IECreate隐藏运行
WinList   获取标题数组
StringInStr   检查标题是否带有 verycd
StringSplit   获取- -之间的字符
写了一个,但是放到IE6上就不得了,而且有BUG,代码一怒之下删除了!{:face (394):}
请懂的帮写一个或者提醒一下函数或者思路~{:face (301):}

Afan的代码已经解决我的问题!本人新手,不知道Afan代码原理是什么,如果能注释一下就好了0.0,看到正则我头就大。不过我会努力去看懂的·{:face (301):}

liufenglg 发表于 2010-9-15 15:12:35

有名言?在哪啊

afan 发表于 2010-9-15 15:19:38

一次可以获取到十条,等于刷新十次获取的效果。。。

baikaifang 发表于 2010-9-15 15:30:30

帮你取得VeryCD窗口标题,名言部分自己拆分一下。#include <IE.au3>

$oIE = _IECreate('http://www.verycd.com')
$sTitle = WinGetTitle($oIE.Parent())
MsgBox(64, '窗口标题', $sTitle)

t87564833 发表于 2010-9-15 15:47:44

回复 4# baikaifang

如果给显示IE的话,加载完图片后,也是为0

baikaifang 发表于 2010-9-15 16:18:05

回复 5# t87564833

我这怎么可以呢?

afan 发表于 2010-9-15 18:27:05

我都提示了一次可以获取十条,LZ咋还在打标题的主意呢?
#include <Array.au3>
Local $sData = InetRead('http://www.verycd.com/statics/title.saying')
Local $sR = StringRegExp(BinaryToString($sData, 4), "'(.+?)'(?=[,\)])", 3)
If @Error Then Exit MsgBox(48, '错误', '获取数据有误 ')
_ArrayDisplay($sR, '')
至于如何获取全部的条目,该由LZ自己想了(不要用打开IE再刷新的办法…),当然貌似LZ也没这要求~

tianji028 发表于 2010-9-15 21:59:35

_IEPropertyGet
试试

jhun 发表于 2010-9-15 22:44:44

一个月前我还真写过这东西,收集了一堆,后来觉得没意思就都删除了,你要早问我直接给你源码了

bfm13142 发表于 2010-9-16 14:55:35

我都提示了一次可以获取十条,LZ咋还在打标题的主意呢?

至于如何获取全部的条目,该由LZ自己想了(不要用 ...
afan 发表于 2010-9-15 18:27 http://www.autoitx.com/images/common/back.gif


    afan,我很奇怪你怎么知道那个名言的地址的,能否透露一下{:face (303):};
   有没有可能你是电驴的XX{:face (411):}

afan 发表于 2010-9-16 15:45:51

afan,我很奇怪你怎么知道那个名言的地址的,能否透露一下;
   有没有可能你是电 ...
bfm13142 发表于 2010-9-16 14:55 http://www.autoitx.com/images/common/back.gif


   我当然不是那个xx,不然也没时间到这混了~ 那个看网页源码就知道了…

bfm13142 发表于 2010-9-16 21:16:52

我当然不是那个xx,不然也没时间到这混了~ 那个看网页源码就知道了…
afan 发表于 2010-9-16 15:45 http://www.autoitx.com/images/common/back.gif


    果然是高人,回去看了一下源码,终于懂了··

cxlater 发表于 2010-9-21 00:32:22

http://www.verycd.com/statics/title.saying

vition 发表于 2010-9-21 10:44:39

#include <Array.au3>
Local $sData = InetRead('http://www.verycd.com/statics/title.saying')
Local $sR = StringRegExp(BinaryToString($sData, 4), "'(.+?)'(?=[,\)])", 3)
If @Error Then Exit MsgBox(48, '错误', '获取数据有误 ')
_ArrayDisplay($sR, '')这个可以用。

shenrenba 发表于 2010-9-21 15:22:38

本帖最后由 shenrenba 于 2010-9-21 15:25 编辑

我用的正则 比你准确点 也比你好理解点
'(\W+?)\'
页: [1] 2
查看完整版本: 如何获取http://www.verycd.com/上的名言?【已解决!】