找回密码
 加入
搜索
查看: 6474|回复: 10

[IE类操作] ObjCreate重置问题

  [复制链接]
发表于 2014-11-2 21:28:35 | 显示全部楼层 |阅读模式
$CheckPage="url1"
$CheckPage2="url2"

While 1

$xmlhttp = ObjCreate("MSXML2.XMLHTTP.3.0")
$xmlhttp.open("GET", $CheckPage, False)
$xmlhttp.send()
$bodytext = BinaryToString($xmlhttp.responseBody, 1)

$xmlhttp.open("GET", $CheckPage2, False)
$xmlhttp.send()
$bodytext = BinaryToString($xmlhttp.responseBody, 1)


$xmlhttp = 0或者null

WEnd

第一次调用上面的函数后,网页内容发生了改变,第二次调用上面的函数,得到的结果没有刷新,怎么回事?
发表于 2014-11-2 23:04:39 | 显示全部楼层
实在是没看明白楼主的意图,为何不把完整代码上来?
 楼主| 发表于 2014-11-2 23:22:47 | 显示全部楼层
回复 2# haijie1223


    基本上就是完整代码了啊

就是循环取个页面$CheckPage,结果发现页面变了,但取的值$bodytext 没变。
搜了一下,说是要$xmlhttp = 0或者null一下,但是用了还是不能重置$bodytext 的内容,觉得很奇怪。
还特意用了个$CheckPage2重置了一下$bodytext的内容,但貌似也没用...
发表于 2014-11-3 11:52:13 | 显示全部楼层
回复 3# liangxm

网址方便发上来吗?
 楼主| 发表于 2014-11-6 17:29:23 | 显示全部楼层
Microsoft.XMLHTTP
不建议使用,奶奶级的老到快没牙了,当然你简单地请求一下响应一个源代码,用倒也无所谓.
Msxml2.XMLHTTP
这个是在Microsoft.XMLHTTP之后发布的,所以稳定性要比好很多,所以叫Msxml2 =Microsoft XML 2
以上二个是和IE同内核的,他们的COOKIE和缓存是和IE共用的,要是你能解决跨域问题,用IE登录某站后,再用他们登录也会是登录状态的.所以他们和IE一样是有本地缓存的,同一网页缓存未过期,请求过一次再次请求会很快.因为这时是直接读取了缓存数据.这也是为什么有些人用这个组件发生,网页数据已刷新,运行代码却更新不及时的原因.
WinHttp.WinHttpRequest.5.1
微软基于服务器数据交流发布的组件,是独立于IE的,也是没有本地缓存的,所以会比上面二者慢.
但他却比上面二者都要新也更强壮一点,强壮也是相对性的.总是都是较老的组件了,而且这个组件有Option选项设置.功能更强大点,可以发送COOKIE.
注意还有个MSXML2.ServerXMLHTTP,也是基于服务器的,不过在VB VBA中同样可以引用,使用方法和WinHttp.WinHttpRequest.5.1类似

评分

参与人数 1金钱 +10 收起 理由
cihren + 10

查看全部评分

 楼主| 发表于 2014-11-6 17:31:24 | 显示全部楼层
$xmlhttp = ObjCreate("MSXML2.XMLHTTP.3.0")
到时试试换成
$oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
发表于 2014-11-11 22:13:50 | 显示全部楼层
回复 5# liangxm


    能否说说与 Inetread 的区别,一直不是很明白~
 楼主| 发表于 2014-11-17 14:02:06 | 显示全部楼层
回复 7# cihren


   什么与Inetread 的区别?
发表于 2014-11-17 14:31:33 | 显示全部楼层
楼上说的意思应该是 http get和inetread的区别
发表于 2014-11-20 15:40:22 | 显示全部楼层
前来学习。。。。。。。。。。。。。。。
发表于 2014-11-29 02:49:18 | 显示全部楼层
对象操作要先销毁才能重新赋值
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-23 13:34 , Processed in 0.214706 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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