获取不到网页源文件!咋整?

社区服务
高级搜索
猴岛论坛辅助工具获取不到网页源文件!咋整?
发帖 回复
倒序阅读 最近浏览的帖子最近浏览的版块
0个回复

获取不到网页源文件!咋整?

楼层直达
mimi_rice

ZxID:55494225

等级: 上士
举报 只看楼主 使用道具 楼主   发表于: 2015-01-07 0
— 本帖被 mimi_rice 执行加亮操作(2015-01-25) —
获取不到网页源文件!咋整?



引用
使用命令库里的获取网页源文件,提示没有权限访问?返回值是空的?
又或者,网页的内容变化了,但是获取到的网页源文件一直都是第一次启动时获取到的?
这么多症状,还有得救吗?
小编今天分享药方三帖。
这三种方法,小编用着还挺顺手的,希望可以帮到大伙儿~




药方一
此方法采用了Microsoft.XMLHttp组件
( XMLHTTP是传送XML格式数据的超文本传输协议 )


使用步骤一点也不麻烦:

1创建XMLHTTP对象。
2输入要网址,并且指定你要对网页进行的操作:GET/Post
   (get是从服务器上获取数据,post是向服务器传送数据。)
3等待返回值。



代码:
  1. 网页源文件=取网页源码("http://bbs.anjian.com/forum.php")
  2. TracePrint 网页源文件
  3. Function 取网页源码(URL)
  4.     Set objXML=CreateObject("Microsoft.XMLHTTP")
  5.     objXML.Open "Get", Url, False
  6.     objXML.send
  7.     If objXML.readyState=4 then
  8.         取网页源码 =objXML.ResponseText
  9.     End If
  10.     objXML.Abort
  11.     Set objXML = Nothing
  12. End Function

代码解析:
    objXML.Open "Get", Url, False
   XMLHTTP对象的Open方法,它的参数是这样的  bstrMethod, bstrUrl, varAsync, bstrUser, bstrPassword  一共五个参数。

   bstrMethod:   数据传送方式,即GET或POST。我们要获取数据,所以使用GET方式。  
   bstrUrl:          服务网页的URL。
   varAsync:      是否同步执行。缺省为True,即异步执行False,即同步执行
                         我们选择False,同步执行,
                         意思就是:发送完要获取网页源文件的指令之后,等待返回值,等值返回了才执行下一句代码。
   bstrUser:        用户名,可省略。
   bstrPassword:用户口令,可省略。


[size=14px]If objXML.readyState=4 then
XMLHTTP对象的readystate属性,它的值是0-4:

   0  :Response对象已经创建,但XML文档上载过程尚未结束
   1  :XML文档已经装载完毕
   2  :XML文档已经装载完毕,正在处理中
   3  :部分XML文档已经解析
   4  :文档已经解析完毕,客户端可以接受返回消息




药方二

使用按键自带的web网页插件的save命令保存网页源文件。


命令名称Save 保存网页或图片
命令功能保存指定URL的文件到本地磁盘
命令参数参数1:需要保存的目标Url
参数2:本地文件名

代码:
  1. call Plugin.Web.Bind("wqm.exe")//绑定wqm
  2. Call Plugin.Web.Save("http://bbs.anjian.com/forum.php", "C:\1.txt") //保存网页源文件到c盘下的1.txt文本中
  3. RunApp "C:\1.txt"
注意:此方法有个缺点,那就是,运行过程中会弹出wqm窗口。



药方三



使用365插件的GetWebText 命令。



使用方法:
1、下载365插件
2、解压之后将:Mini365.dll  这个文件放到按键精灵安卓目录下的plugin文件夹中

   365插件下载365插件.rar[点击下载](15 K) 下载次数:0 累计下载获得 DB 没有记录

     Plugin.Mini365.GetWebText URL,Mode
     GetWebText命令有两个参数:网址(URL)和 网页编码
Mode
     网页编码常见的是:GB2312UTF-8


    如何得知网页的编码是哪种呢?
     我们打开网页,按下F12调出网页代码分析器,绿色圈圈里的那个GBK就是当前网页的编码:




代码:
  1. 网页源文件= Plugin.Mini365.GetWebText ("http://bbs.anjian.com/forum.php", "GBk")
  2. TracePrint 网页源文件















[ 此帖被mimi_rice在2015-01-07 19:30重新编辑 ]
« 返回列表
发帖 回复