excel vba 网页数据抓取(Excel教程Excel函数Excel表格信息快速提取实例(33))

优采云 发布时间: 2021-09-24 15:30

  excel vba 网页数据抓取(Excel教程Excel函数Excel表格信息快速提取实例(33))

  背景要求

  先说一下问题的背景:

  这个网站可以查看深圳各区的空气质量信息,每小时更新一次。

  

  要求:快速提取并保存里面的表信息。

  Excel可以使用data-from网站这个函数来实现简单的网络表格数据爬取,想必很多朋友应该都知道并使用过。

  

  这个方法对于一些简单的网页还是很实用的。但是对于一些网页,比如pm25.in,上面的方法不是很方便,如下图:

  

  直接选择表格上方的√,不能导入。

  而且如果直接查看整个页面,会提取出很多除了表格之外的无用信息。

  

  效果展示

  所以,在这种情况下,可以借助vba灵活解决这个问题。

  第一个效果:点击“更新”直接提取表格信息

  

  然后点击“保存汇总”,将此时提取的信息保存到汇总表中,以备后续使用。

  

  核心代码

  整个过程并不难。抓取表格数据的核心功能代码如下,每行代码的含义都标在后面。

  如果你想换到另一个城市,你只需要改变URL地址。

  With Sheets(1).QueryTables.Add("URL;http://www.pm25.in/shenzhen", Range("A2")) '抓取网站网页地址

    .RefreshStyle = xlOverwriteCells '覆盖模式

    .WebFormatting = xlWebFormattingAll '包含全部格式

    .WebSelectionType = xlSpecifiedTables '指定table模式

    .WebTables = "1" '第1张table

    .Refresh False

End With

  后续的保存和汇总是一些常规的VBA代码。

  需要注意的是,此代码仅适用于网页源代码中收录表格数据的网页。

  如果您对本内容感兴趣,可以在公众号回复“网页表单”获取vba文件试用~~

  您可能还想看:

  VBA示例(35)-一键批量ppt转pdf

  VBA示例(34)--快速匹配不同名称的数据

  VBA示例(33)-一键提取word中的粗体文本

  VBA示例(32)-批量替换隐藏的神秘字符

  VBA 示例(31) - 自定义 VBA 代码的快捷键

  VBA 示例(30)-为多个工作表创建目录和超链接

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线