ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[分享] 小白也抓网——分享网抓作品

  [复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-11-21 12:20 | 显示全部楼层
VBA万岁 发表于 2014-11-21 08:57
我觉得第5句应改为:
s =IIf(Len(s) = 4, "", "00") & s

我觉得第5句应改为:
\u6211\u89C9\u5F97\u7B2C5\u53E5\u5E94\u6539\u4E3A\uFF1A

第一行的内容转成第二行的内容,其中的5没有转

TA的精华主题

TA的得分主题

发表于 2014-11-21 14:42 | 显示全部楼层
弱弱的问个,如果我想搜的是省份,该怎么改的?

TA的精华主题

TA的得分主题

发表于 2014-11-21 14:50 | 显示全部楼层
renahu 发表于 2014-11-1 18:59
补充内容 (2014-11-9 14:16):
练习二

准确点说,关于百度地图的抓取,如果我想在 省级地图上搜索,如何调整?
另外这个城市的编码是怎么获取的?

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-11-21 15:02 | 显示全部楼层
某均 发表于 2014-11-21 14:50
准确点说,关于百度地图的抓取,如果我想在 省级地图上搜索,如何调整?
另外这个城市的编码是怎么获取的 ...

怎么把百度地图的搜索结果全部导出到Excel文件
http://club.excelhome.net/thread-1156314-1-1.html

TA的精华主题

TA的得分主题

发表于 2014-11-21 16:43 | 显示全部楼层
本帖最后由 VBA万岁 于 2014-11-21 16:53 编辑
renahu 发表于 2014-11-21 12:20
我觉得第5句应改为:
\u6211\u89C9\u5F97\u7B2C5\u53E5\u5E94\u6539\u4E3A\uFF1A


关于字符串与其unicode码之间的互换,请参见如下代码:
  1. Private Function Encode(strEncode As String) As String
  2.     Dim i As Long
  3.     Dim chrTmp As String
  4.     Dim ByteLower As String
  5.     Dim ByteUpper As String
  6.     Dim strReturn As String
  7.     For i = 1 To Len(strEncode)
  8.         chrTmp$ = Mid(strEncode, i, 1)
  9.         ByteLower$ = Hex$(AscB(MidB$(chrTmp$, 1, 1)))
  10.         If Len(ByteLower$) = 1 Then ByteLower$ = "0" & ByteLower$
  11.         ByteUpper$ = Hex$(AscB(MidB$(chrTmp$, 2, 1)))
  12.         If Len(ByteUpper$) = 1 Then ByteUpper$ = "0" & ByteUpper$
  13.         strReturn$ = strReturn$ & "\u" & ByteUpper$ & ByteLower$
  14.     Next
  15.     Encode = strReturn$
  16. End Function

  17. Sub 获取字符串unicode码()
  18.     ActiveCell = "HTTP://www.apabi.com/ValidateCode.aspx我觉得第5句应改为:"
  19.     MsgBox Encode(ActiveCell)
  20.     ActiveCell.Offset(1) = Encode(ActiveCell)
  21.     ActiveCell.Offset(1).Select
  22. End Sub

  23. Function unescape(strTobecoded As String) As String
  24.     With CreateObject("msscriptcontrol.scriptcontrol")
  25.         .Language = "JavaScript"
  26.         unescape = .Eval("unescape('" & strTobecoded & "');")
  27.     End With
  28. End Function

  29. Sub 根据unicode码返回字符串()
  30.     MsgBox unescape(ActiveCell)
  31.     ActiveCell.Offset(-1).Select
  32. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2014-11-21 16:46 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 VBA万岁 于 2014-11-21 16:54 编辑
VBA万岁 发表于 2014-11-21 16:43
关于字符串与码之间的互换,请参见如下代码:


其中,Encode函数的出处见于如下帖子1楼的第2段代码:
http://club.excelhome.net/forum.php?mod=viewthread&tid=1146746

TA的精华主题

TA的得分主题

发表于 2014-11-21 17:03 | 显示全部楼层
coby001 发表于 2014-11-19 14:11
你用一下迅雷的批量下载
看看迅雷是如何设置超时和重连次数的~
以及下载失败是如何显示

向老师学习,
我一贯是用迅雷以列表下载的方法来下载已抓包的读秀电子书!

TA的精华主题

TA的得分主题

发表于 2014-11-21 17:08 | 显示全部楼层
VBA万岁 发表于 2014-11-18 10:51
在ThisWorkbook中增加如下代码(红色字体部分),以在打开工作薄时获取图书分类数据。

Private Sub Wo ...

第3版的在打开工作簿时,为了方便看到工作表中的验证码,可在ThisWorkbook中加上如下代码以使窗体最大化:
Application.WindowState = xlMaximized

TA的精华主题

TA的得分主题

发表于 2014-11-21 17:13 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
renahu 发表于 2014-11-21 12:20
我觉得第5句应改为:
\u6211\u89C9\u5F97\u7B2C5\u53E5\u5E94\u6539\u4E3A\uFF1A

麻烦老师有空帮手看看
http://club.excelhome.net/thread-1147786-1-1.html

我在本帖也提了类似问题,谢谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-11-23 14:42 | 显示全部楼层
coby001 发表于 2014-11-19 23:23
不错,有进步,用了异步方式,速度快多了

缺点:用了太多的 msgbox,会令人厌烦的。

老师,我发现异步抓取时,一旦抓取中途断网后,大部分情况下,readystate=4,status=12007(服务器名称无法被解析),这时如果把网重新连上,可以继续抓取。但是一旦遇到readystate=1,status=<未指定的错误>,则再连上网,就算重新建立xmlhttp对象,重新发送请求后,回应总是readystate=1,status=<未指定的错误>,无法继续抓取,除非重启excel,不知如何处理?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-25 21:06 , Processed in 0.035510 second(s), 5 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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