爬虫练习--爬取股票数据
爬取股票数据
步骤
- 从东方财富网找到上市公司的股票代码并保存
- 根据股票代码去百度股市通去查找相关股票的具体信息并保存
代码
#-*- coding:utf-8 -*-
import requests
from bs4 import BeautifulSoup
import traceback
import re
import xlwt
def getHTMLText(url, code="utf-8"):try:r = requests.get(url)r.raise_for_status()r.encoding = codereturn r.textexcept:traceback.print_exc()return ""
#获取股票列表
def getStockList(lst, stockURL):html = getHTMLText(stockURL,"GB2312")soup = BeautifulSoup(html, 'html.parser') a = soup.find_all('a')for i in a:try:href = i.attrs['href']lst.append(re.findall(r"[s][hz]\d{6}", href)[0])except:continue
#根据股票的代号查找股票的交易信息,并将结果存储到相关文件
def getStockInfo(lst, stockURL):#创建EXCEL文件book=xlwt.Workbook(encoding='utf-8')sheet1=book.add_sheet('sheet1',cell_overwrite_ok=True)heads=['股票名称','最高','最低','今开','昨收','成交额','成交量','净值','折价率']num=0for head in heads:sheet1.write(0,num,head)num=num+1book.save('gupiao.xls')count = 1length=len(lst)#每次将一个查询的数据输出到EXCEl表中for stock in lst:url = stockURL + stock + ".html"html = getHTMLText(url)try:if html=="":continueinfoDict = {}soup = BeautifulSoup(html, 'html.parser')stockInfo = soup.find('div',attrs={'class':'stock-bets'})#查找股票名称if stockInfo:name = stockInfo.find_all(attrs={'class':'bets-name'})[0]infoDict.update({'股票名称': name.text.split()[0]})#寻找所有键和值(最高、最低)keyList = stockInfo.find_all('dt')valueList = stockInfo.find_all('dd')for i in range(len(keyList)):key = keyList[i].textval = valueList[i].textinfoDict[key] = valj=0for i in heads:if i in infoDict:sheet1.write(count,j,infoDict[i])j=j+1else:passbook.save('gupiao.xls')print("\r当前进度: {:.2f}%".format(count*100/length),end="")count=count+1except:print("\r当前进度: {:.2f}%".format(count * 100 / length), end="")count = count + 1continue
if __name__=='__main__':#找寻将数据静态写在html页面的网页stock_list_url = 'http://quote.eastmoney.com/stocklist.html'stock_info_url = 'https://gupiao.baidu.com/stock/'slist=[]getStockList(slist, stock_list_url)getStockInfo(slist, stock_info_url)
运行结果
- 程序运行后将结果保存在EXCEL中,部分结果截图如下所示
爬虫练习--爬取股票数据相关推荐
- 知识星球《玩转股票量化交易》之 爬虫爬取股票数据
量化交易是一个多技术综合的项目,学习完书籍<Python股票量化交易从入门到实践>我们再次升级学习的内容--知识星球<玩转股票量化交易> 在星球中我们会深入分享包括Python ...
- MATLAB爬虫爬取股票数据
近年来,大数据盛行,有关爬虫的教程层次不穷.那么,爬虫到底是什么呢? 什么是爬虫? 百度百科是这样定义的: 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种 ...
- 【python爬虫】用python爬取股票数据
这几天把学习通的 python 爬虫相关课程给刷完了,想去动手也实践一下,重温一下很久之前学过的东西 然后发现实例2(爬淘宝那个).实例3(爬股票那个),好像都有点问题.实例2是淘宝现在的反爬机制好像 ...
- Python爬虫教程-Python爬取股票数据过程详解
这篇文章主要介绍了基于Python爬取股票数据过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 基本环境配置 python 3.6 pycha ...
- 用Python爬取股票数据,绘制K线和均线并用机器学习预测股价(来自我出的书)
最近我出了一本书,<基于股票大数据分析的Python入门实战 视频教学版>,京东链接:https://item.jd.com/69241653952.html,在其中用股票范例讲述Pyth ...
- 用Python爬取股票数据,绘制K线和均线并用机器学习预测股价
最近我出了一本书,<基于股票大数据分析的Python入门实战 视频教学版>,在其中用股票范例讲述Python爬虫.数据分析和机器学习的技术,大家看了我的书,不仅能很快用比较热门的案例学好P ...
- 金融数据分析(四)爬取股票数据——方法一:requestsbs4re
案例(二)爬虫预热 项目二:用两种不同的方法爬取股票数据 方法一:requests&bs4&re import requests from bs4 import BeautifulSo ...
- 用python爬取股票数据的一点小结
一.背景 网上对于爬取股票数据有相对完善的教程.不过大部分教程都是只能够爬取一段时间的股票数据,针对某一只股票的历史数据爬取,目前还没有看到比较好的教程.下面对近期学的东西进行一点点小结. 二.股票数 ...
- 用Python爬取股票数据,绘制K线和均线并用机器学习预测股价(来自我出的书)(转载)
最近我出了一本书,<基于股票大数据分析的Python入门实战 视频教学版>,京东链接:https://item.jd.com/69241653952.html,在其中用股票范例讲述Pyth ...
最新文章
- 关闭串口_USART串口通信,DMA方式,一分钟从入门到大师
- 测开之路二十:比较v1和v2
- 原码、反码、补码的产生、应用以及优缺点有哪些?
- 操作系统设计与实现第3版笔记与minix3心得(4)-操作系统发展历史(2)
- Linux之Nginx配置解析PHP
- 本地项目如何连接码云上的项目
- java流与文件——流
- python之穿越火线游戏代码_Python 大作业之五子棋游戏(附代码)
- EMS批量为用户分配邮箱
- php 判断百度浏览器版本,jquery获取浏览器类型和版本号的方法
- 理财子公司成长的烦恼
- pythonsocket中tcp通信接收不到数据_简单说说Python Socket编程步骤?
- WPF 最简方法使用自己定制的 WPF 框架
- 基于stm32的太阳跟踪装置设计与制作
- 用python分析股票收益影响因素的方法_【Python】用Python分析股票的收益和风险
- filco的pin码_filco蓝牙键盘配对流程,filco 忍者二代 蓝牙怎么
- 俞敏洪励志演讲稿【二】
- Android 性能优化四个方面总结
- android5.1.1版本怎么升级,Android 5.1 悄悄升级 版本号升至 LMY47E
- Matlab提取矩阵行数与列数