在数据分析中,数据采集是分析数据的前提,如果没有数据,数据分析也就成了无米之炊。要想获取数据,一个有效的办法就是利用爬虫,从网上采集数据。python是写爬虫的强大语言,但是对于新手来说依旧是有些难度,而且如果时间比较紧迫,也没必要花费精力去分析网页结构,去写那几十行代码,因为用excel就可以轻轻松松的办到,下面以东方财富网的新股申购页面为例进行数据爬取,看看最近几个月有哪些新股即将上市。
首先新建一个excel文件,点击 数据-自网站:
这时会弹出一个窗口,点击 高级 选项:
之后填入东方财富网新股申购页面的URL : http://data.eastmoney.com/xg/xg/default.html(如果想爬取其它网站,这里需填入该网站的URL,URL就是网址的意思)。
之后在命令超时中填入 1 ,这里对应的是python中的timeout概念,在某些网络情况不好或者服务器端异常的情况会出现请求慢或者请求异常的情况,这个时候我们需要给请求设置一个超时时间,而不是让程序一直在等待结果。这里填入1,意味着必须在1分钟内返回响应,否则会报错。
之后在HTTP请求标头参数那里选择 UserAgent (如果没有这个选项则手动输入即可),UserAgent可以简单理解为各个浏览器的身份证,不同浏览器的UserAgent是不一样的,为什么这里要填一下UserAgent呢,因为我们访问网站基本上都是通过浏览器访问的,但是爬虫是通过程序直接访问的,如果不填UserAgent,被访问网站就可以很轻松识别出你是一只爬虫,而不是通过浏览器浏览网页的人类。
之后我们需要知道我们的UserAgent是什么,只需简单几步就可以找到,如图所示:
(1)右键单击所要爬取的网页,点击 检查 选项。(也可以键盘 Ctrl + Shift + I)
之后会出现如下页面,点击 Network 按钮。
(2)这时候会发现Network一片空白
没关系,刷新一下页面即可。
(3)点击上图中的 default.html 按钮,将页面拉至最下面即可找到UserAgent啦,将User-Agent冒号后面的文字全部复制,如括号中所示,因为我用的谷歌浏览器,这就是谷歌浏览器的UserAgent。(Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36)
将复制的UserAgent信息填入Excel中,就大功告成了,点击确定即可:
之后会弹出新的窗口,点击左侧的Table 0 就可以看到我们的数据了,是不是很简单:
点击右下角的 转换数据,就可以进入到Power Query编辑器了。Power Query编辑器是一个进行数据清洗的强大工具,在数据爬取的过程中,会有可能出现乱七八糟的数据,这时候就需要数据清洗,关于Power Query编辑器的使用后续我会写一下教程,这里就不展开了,我们这次爬取的数据比较干净,不需要清洗,所以直接点击左上角 关闭并上载即可 ,就能把数据传到excel中了。
大功告成了!下面就是最终爬取到的数据,是不是很简单呢,快去自己动手试试吧!
