cihren
发表于 2014-10-18 19:24:15
回复 8# Authree
数据一般都是从“0”开始放的呢。
haijie1223
发表于 2014-10-18 19:26:52
回复 11# cihren
获取源码用打开网页的方法效率是不是低了点,换成$sHtml = BinaryToString(InetRead("http://qid1030.1688.com/page/contactinfo.htm",1))这个试试~
cihren
发表于 2014-10-18 19:27:51
回复 2# veket_linux
不是的哦,不光是Listview, MesBo、ControleWrite都不行的。
14楼有方案。
cihren
发表于 2014-10-18 19:28:42
回复 3# Authree
MsgBox也不行的。
cihren
发表于 2014-10-18 19:39:19
回复 13# shqf
这一招还真管用,使用ConsoleWrite结合14楼的方法,终于找到了问题所在。
上图:
这是_IEReadBodHtml读出的源文件。
这是_INetGetSource读出的源文件。
看来差别很大啊!~
cihren
发表于 2014-10-18 19:46:12
回复 17# haijie1223
呵呵,果然有效。分析源码后发现和14楼用_INetGetSource方法的结果一致,源码文件也一样。
看来InetRead和_INetGetSource是殊途同归,只是_IEBodyReadHTML有些另类。$sHtml = BinaryToString(InetRead("http://qid1030.1688.com/page/contactinfo.htm",1))
$sHtml = _INetGetSource("http://qid1030.1688.com/page/contactinfo.htm"))
haijie1223
发表于 2014-10-18 20:55:51
回复 21# cihren
_INetGetSource应该和我的代码一样的,其实获取源代码方法很多,用winhttp的方法也可以
Authree
发表于 2014-10-18 22:11:10
回复 21# cihren
学习了,,感谢楼主,通过这个帖子可以学习到获取网页的相关用法。新手还在摸索学习中。。
zhaoyun
发表于 2014-10-20 08:13:16
学习了,,
vuivui
发表于 2014-10-21 16:08:00
inet.au3 里面就是用的这个:BinaryToString(InetRead()
我向来这样用的,很多包含文件其实也就几句代码有用,脱去包含文件不仅代码简单,而且有利于理解。
vuivui
发表于 2014-10-21 16:09:08
inet.au3 里面就是用的这个:BinaryToString(InetRead()
我向来这样用的,很多包含文件其实也就几句代码有用,脱去包含文件不仅代码简单,而且有利于理解。
deaph
发表于 2014-10-21 17:22:07
学习了,感谢分享!!
cihren
发表于 2014-10-23 00:04:10
回复 25# vuivui
嗯,看来这个确实比IE.au3要强好多。
Qokelate
发表于 2014-11-9 09:04:30
认真想下就明白了
IE.au3 调用的是IE功能, 获取下来就是IE渲染后的HTML(本地HTML)文件源码(或许还会自动修正语法错误什么的)
而inetread是读取服务器的返回, 只负责取数据, 不会进行后处理
cihren
发表于 2014-11-11 22:08:04
回复 22# haijie1223
使用 Inetread() 读取网页源码的时候,提示访问频繁,关闭程序后立即再运行一陈,又是这个提示,再关再运行,如此反复。有什么好的解决方案呢?
清除cookies也没用。。。