ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 蓝天630902

[分享] 第一辑、网页:点击标签,翻页

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2012-10-30 21:54 | 显示全部楼层
本帖已被收录到知识树中,索引项:网页交互
本帖最后由 xd0718 于 2012-10-30 21:57 编辑

求蓝天大侠帮忙。我的大问题已解决,但有一些小问题:抓取能够成功,但在写入EXCEL时存在跳页现象,写入不完整。代码如下:
sub 自动登录抓取数据()
On Error Resume Next
Application.DisplayAlerts = False
Set ie1 = CreateObject("internetexplorer.application")
With ie1
    .Visible = True
    .Navigate "http://51.64.3.17:7008/login.do"   '初始登录页面,有用户名和密码框
    Do Until .Readystate = 4 And .Notbusy
        DoEvents
    Loop
    .Document.all("username").Value = "999999999"  '用户名
    .Document.all("password").Value = "123456"     '密码
    .Document.all("submit").Click                   '提交        
    Do Until .Readystate = 4 And .Notbusy
        DoEvents
    Loop
    k = k + 1                                           '我也不知道原因,只是用K来控制登录        
    .Navigate "http:51.64.3.17:7008/information/deposit/getT47_agreementList.do?newsearchflag=" & k  '系统默认为                                             'http:51.64.3.17:7008/information/deposit/getT47_agreementList.do?newsearchflag=2,但多次登录
                               '提示session错误,加入K后能够解决
    Do Until .Readystate = 4 And .Notbusy
        DoEvents
    Loop
    .Document.all("organkey").Value = "999999999"          '单位分配的号,也即用户名
    .Document.all("deposit_type").option.Value = "2"       '账户类型,为对私账户,但不起作用,应该是使用错误,求指正
    .Document.all("input")(9).onclick
    Do Until .Readystate = 4
        DoEvents
    Loop
    For p = 1 To 10000
        .Navigate "http://51.64.3.17:7008/information/deposit/getT47_agreementList.do?&intPage=" & p   '翻页
        Do Until .Readystate = 4
            DoEvents
        Loop
        Set r1 = .Document.all.tags("table")(5).Rows
        n = Range("a65536").End(xlUp).Row
        For m = 1 To r1.Length - 1
            For j = 0 To 6
                Cells(m + n, j + 1) = r1(m).Cells(j).innerText
            Next j
        Next m
    Next p
    End With

截图2.rar

261.68 KB, 下载次数: 7

截图及源码1.rar

73.34 KB, 下载次数: 13

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-10-31 08:59 | 显示全部楼层
xd0718 发表于 2012-10-30 21:54
求蓝天大侠帮忙。我的大问题已解决,但有一些小问题:抓取能够成功,但在写入EXCEL时存在跳页现象,写入不完 ...


.Document.all("deposit_type").option.Value = "2"       '账户类型,为对私账户,但不起作用,应该是使用错误,求指正

改成:

.Document.All("deposit_type").All.tags("option")(2).Selected = True     '账户类型,对私账户

应该可以。

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-10-31 09:07 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
{:soso__7754280061308968573_2:}

TA的精华主题

TA的得分主题

发表于 2012-10-31 12:54 | 显示全部楼层
多谢蓝天老师,但还是存在抓取内容跳页的问题,不知是何原因。

TA的精华主题

TA的得分主题

发表于 2012-10-31 20:55 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
老大,我按你的代码作了,但还是不行,而且还是有跳页的现象/抓取不全。我把内容输出到文本文件中也是不行。请帮我看看吧。

TA的精华主题

TA的得分主题

发表于 2012-11-3 09:26 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2012-11-3 22:47 | 显示全部楼层
蓝天老师,我的抓取页面很规律,都是每页20行数据,但现在还是存在跳页现象,抓取不完整,而且还有重复数据出现。而且我打算在.document.all("intPage").value赋值后点击“GO”按钮翻页,但无法实现,只是输入框里数字变化,但不番页,求助。

TA的精华主题

TA的得分主题

发表于 2012-11-5 12:38 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
蓝天老师,我重上源码,再帮小弟看一下吧。谢谢了。我现在的情况是用Click,onClick和submiit方法都不管用。代码是.Document.al("input").all.tags("a")(22).click,我在前面加了个判断标签<a>index值的语句。但是没有反应。

源码.rar

3.75 KB, 下载次数: 8

TA的精华主题

TA的得分主题

发表于 2013-2-16 17:14 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
收藏一下。以后有用。

TA的精华主题

TA的得分主题

发表于 2013-3-12 09:39 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-26 17:34 , Processed in 0.034446 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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