本篇文章为大家展示了Python怎么爬虫股票数据,代码简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
中国A股2019年开年市场火爆,随着股市大涨,沪市指数逼近3000点大关,三大股指均创下本轮反弹新高,股市单日成交过万亿,许多人跑步进入股市。
要想在股市中获得收益,对股票数据进行分析非常重要,要进行数据分析必须有数据,然而数据收集是很费时费力的事情,有些网站中会有我们需要的数据,如果能把这些数据下载到电脑中,对后面使用机器学习算法处理非常有用。例如下图是某一日的股票行情信息:
如果想得到上面表格中的数据,可以使用网络爬虫实现。网络爬虫,又被称为网页蜘蛛,网络机器人,有时也称为网页追逐者,是一种按照一定的规则,自动地抓取互联网上网页中相应信息(文本、图片等)的程序或者脚本,然后把抓取的信息存储到自己的计算机上。
程序主要由三部分组成:网页源码的获取、删除冗余的内容和标签和结果的显示。
实现步骤如下:
1、网页源码的获取
url='http://quote.stockstar.com/stock/ranklist_a_3_1_1.html' #目标网址 headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64)"} #伪装浏览器请求报头 request=urllib.request.Request(url=url,headers=headers) #请求服务器 response=urllib.request.urlopen(request) #服务器应答 content=response.read().decode('gbk') #以一定的编码方式查看源码 for page in range(1,8): url='http://quote.stockstar.com/stock/ranklist_a_3_1_'+str(page)+'.html' request=urllib.request.Request(url=url,headers={"User-Agent":random.choice(user_agent)}) #随机从user_agent列表中抽取一个元素 content=response.read().decode('gbk') #读取网页内容
2、删除冗余的内容
获取网页源码后,就可以从中提取我们所需要的数据了。如前所述,提取的网页内容中有很多html的标签,空格等内容,此时需要从源码删除这些信息,这里仍然使用正则表达式,代码如下:
pattern=re.compile('<tbody[\s\S]*</tbody>') body=re.findall(pattern,str(content)) pattern=re.compile('>(.*?)<') stock_page=re.findall(pattern,body[0]) #正则匹配 stock_total.extend(stock_page) time.sleep(random.randrange(1,4))
3、结果的显示
print('代码','\t','简称',' ','\t','最新价','\t','涨跌幅','\t','涨跌额','\t','5分钟涨幅') for i in range(0,len(stock_last),13): #网页总共有13列数据 print(stock_last[i],'\t',stock_last[i+1],' ','\t',stock_last[i+2],' ','\t',stock_last[i+3],' ','\t',stock_last[i+4],' ','\t',stock_last[i+5])
下图是使用爬虫获取的数据。
有了上面数据之后,我们就可以使用机器学习算法,自己编制程序进行预测了。
上述内容就是Python怎么爬虫股票数据,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。