网页数据抓取软件(P.S.@AJAX数据库实例讲解(有时))

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

  网页数据抓取软件(P.S.@AJAX数据库实例讲解(有时))

  故事的缘由

  我以前有个小网站,在上面发表了几篇关于使用SAS抓取网络数据的短文,然后在人大论坛上挂了一个链接。后来因为懒惰,这个网站被挂了,人们纷纷询问。更新此博客后播放

  添加了一个简单易懂的,其他翻译已由@statnet收录发布,文章会在最后链接。

  适用性

  这种情况下的以下理论可以通过相同的方式访问。

  附言@AJAX 数据库实例|| @AJAX 数据库实例说明

  文字前戏

  有时我们经常需要保存和备份某些在线数据,例如银行利率、股票报价,或者来自统计局、各种金融机构的数据,或者其他类型的网站。有时这些网站 会提供历史数据,有些则不会。但是我们可以使用SAS每天运行程序,获取累积的历史数据,供以后分析。下面以获取首页上海银行同业拆借利率为例进行说明。

  以下是我们想要的首页数据

  

  当我们打开这个网页并输入网页的源代码时,我们会惊讶地发现。什么情况下,首页看到的数据在源码中是查不到的。是否可以使用其他技术?来看看源码代表什么

  网页布局。

  按照网页布局,最新的Shibor数据的源代码应该放在大量文字后,他放一句话。

  这是html的内联框架结构,意思是他把数据放到另一个网页上,然后把这个网页嵌入首页。 OK,那我们就打开这个页面

  查看源代码,发现这个网页中存在数据,那么我们就开始用SAS抓取它。

  高潮

  首先引入Filename,并用它添加infile语句将网页作为文件导入SAS数据集。 BaseSAS 中的 FILENAME 语句(URL 访问方法)使用户能够从网站访问源代码并将其读入数据集。该语句的语法是:

  

FILENAME fileref URL 'external-file';

  将 Shibor 数据网页导入到 SAS 数据集中。我们知道网页数据是一种标记语言,它遵循一定的规范,包括所有的属性设置。所以我们用 dlm=">" 来分隔,导入到一个变量中。因为数据太乱,无法区分导入到不同的变量中。

  

FILENAME SOURCE URL "%STR(http://www.shibor.org/shibor/web/html/shibor.html)" DEBUG;

DATA Zhaocl01;

FORMAT WEBPAGE $1000.;

INFILE SOURCE LRECL=32767 DELIMITER=">";

INPUT WEBPAGE $ @@;

RUN;

  因为我们用dlm=">"来分隔,所以我们知道采集到的观测值只需要用

  分隔

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线