如何删掉第一行_如何爬取新浪财经网站上上市公司的高管任职信息

导读

在做研究的时候,有时我们需要从网络上去搜集一些数据,并进行整理。这些数据往往比较多,如果我们将搜索到的数据一条一条打开并整理,那是一个相当麻烦又费力的事情。此时我们就可以借助Stata来帮助我们准确并高效的完成这一过程。今天我们就为大家介绍如何用Stata爬取新浪财经网站上上市公司的高管任职信息。


一、单个公司的信息抓取

1、新建文件夹并下载源代码

首先我们在电脑上新建一个文件夹(新浪财经高管任职),其中mkdir就代表在E盘上建一个新浪财经高管任职文件夹,而前面加上cap是指在所选择的路径下如果此文件夹已存在就忽略,如果没有就直接新建一个。

clear allcap mkdir "E:\新浪财经高管任职"cd "E:\新浪财经高管任职"

接下来我们打开新浪财经网站,在搜索框中输入一个公司代码(如600900),进入此公司的主页面找到我们要搜集的信息(公司资料栏下的公司高管),点击进去我们就会看到这样的页面:

6e4de547035e935ab11f57cfdbfdde58.png

根据上面我们找到的网页中的信息,我们就可以很明确我们的目的了。我们需要搜集这些历届公司成员的姓名,职位,任职起始日期和终止日期数据并进行整理。如果只是这样的页面我们并不能直接下载和整理,我们需要找到这一网页的网页源代码,我们只需在此网页的空白处点击右键选择查看源文件(或源代码),进入后按住Ctrl+F键在弹出的搜索框中搜索任一高管姓名(如陈国庆)就会看到下面的这一页面:

cb7c24c0aee3cebccf37f5f071de61b4.png

然后我们利用copy这一命令将源文件页面上的内容以temp文本格式下载到我们建好的文件夹下。

copy "http://vip.stock.finance.sina.com.cn/corp/go.php/vCI_CorpManager/stockid/600900.phtml" temp.txt, replace

2、读入文件并保留有用信息

(1)文本读入和转码

我们用infix将temp文本文件读入Stata中,在读入的结果中内容却出现了乱码的情况。

infix strL v 1-100000 using temp.txt, clear

fadf1e74adf6966117a327d656e2d3a1.png

遇到这种情况,接下来的一步是进行转码,下面我们用ustrfrom这个命令对其进行转码,将编码为gb18030的字符串v转换为UTF-8编码的Unicode字符串,进行这一操作之后我们导入的数据就显示正常了。

replace v = ustrfrom(v, "gb18030", 1)

(2)观察源代码并用keep和drop进行保留和删减 

接着我们需要对源代码进行下一步处理,我们看到源代码中有很多行内容,这些内容中只有一部分是我们需要提取的。我们可以观察到上图源代码中只有以

结尾的一行内容中才有我们需要的信息,下面我们就使用keep进行保留,意为如果变量v中含有
就保留。
keep if index(v, "
")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值