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

优采云 发布时间: 2021-09-10 04:11

  网页表格抓取(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)-batch 替换隐藏的神秘字符

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

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

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线