Python爬虫-抓取数据到可视化全流程的实现
(ps:我也是在学习的过程中,欢迎各位小伙伴跟我一起交流,一起学习)
1、爬取目标网站:业绩预告_数据中心_同花顺财经
(ps:headers不会设置的可以看这篇:Python——爬虫 用requests.get获取网页内容为空 ’ ’_你隔壁的小王的博客-CSDN博客)
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import re
import requests##把各种可能用到的包提前导好
headers={'Accept': 'text/html,*/*; q=0.01','hexin-v': 'A2C11EVPFXAhNKl0PUpM6xp8MWU2aUUO5k-YOdpwLngMrQpTgnkUwzZdaMMp','Referer': 'http://data.10jqka.com.cn/financial/yjyg/','Cookie':'对应填写','User-Agent':'对应填写'
}
url="http://data.10jqka.com.cn/ajax/yjyg/date/2021-12-31/board/ALL/field/enddate/order/desc/page/{}/ajax/1/free/1/"
result = ''for i in range(1,5): result += requests.get(url.format(i), headers=headers).text
result
爬取成功,检查数据
2、获取序号、股票代码、等你所需要的信息
index = re.findall('<td>(.*)</td>',result)
index
148条数据符合预期,继续查看股票代码(这里使用正则表达式查询,可以看这篇里边对正则表达式进行了讲解:正则表达式+常用示例_你隔壁的小王的博客-CSDN博客)
stock_code = re.findall('class="stockCode">(.*)</a>',result)
print(stock_code)
3、组成DataFrame
data = pd.DataFrame({"stock_code":stock_code,"stock_name":stock_name,"performance":performance,"summary":summary
}, index=index)data
组合成功
4、处理数据
使用正则筛选出净利润和增长幅度
data['start_profit'] = data['summary'].str.extract('(-{0,1}\d{0,10}\.{0,1}\d{0,10})万元')
data['end_profit'] = data['summary'].str.extract('至(-{0,1}\d{0,10}\.{0,1}\d{0,10})万元')
data["start_range"] = data['summary'].str.extract('(\d{0,5}\.{0,1}\d{0,5})%') + "%"
data["end_range"] = data['summary'].str.extract('至(\d{0,5}\.{0,1}\d{0,5})%') + "%"
data.head()
判断盈利情况:
def if_profit(x):if x in ['业绩预降', '业绩大幅上升', '业绩大幅下降', '业绩预盈', '业绩预增', '预计扭亏']:return 1if x in ['预计减亏', '不确定','业绩预亏', '预计增亏', '预计续亏']:return -1return 0
data['is_profit'] = data.apply(lambda x : if_profit(x["performance"]),axis=1)
data.head()
##计算盈利多少
yingli = (data['is_profit'] == 1).sum()
yingli
##亏损多少
kuisun = (data['is_profit'] == -1).sum()
kuisun
通过绘制饼图实现可视化:
plt.pie([yingli,kuisun], labels=['盈利','亏损'], autopct='%.2f%%')
font={"family":"kaiti","size":"15"
}
plt.rc("font",**font)
plt.title('148家公司盈利和亏损情况占比')
plt.show()
有问题欢迎大家跟我讨论!
Python爬虫-抓取数据到可视化全流程的实现相关推荐
- 如何使用Python爬虫抓取数据?
Python爬虫应用十分广泛,无论是各类搜索引擎,还是日常数据采集,都需要爬虫的参与.其实爬虫的基本原理很简单,今天小编就教大家如何使用Python爬虫抓取数据,感兴趣的小伙伴赶紧看下去吧! 工具安装 ...
- python爬虫抓取数据的步骤-Python爬虫抓取手机APP的传输数据
大多数APP里面返回的是json格式数据,或者一堆加密过的数据 .这里以超级课程表APP为例,抓取超级课程表里用户发的话题. 1.抓取APP数据包 得到超级课程表登录的地址:http://120.55 ...
- Python爬虫抓取数据时怎么防止ip被封
大数据公司在做数据分析的时候,对目标网站频繁访问很容易触发网站的反爬机制,因此如果想要突破限制只能使用动态ip频繁切换地址模拟真实客户访问网站才能起到防封效果.比如在做数据抓取的时候报错403等限制访 ...
- python爬取大众点评评论_python爬虫抓取数据 小试Python——爬虫抓取大众点评上的数据 - 电脑常识 - 服务器之家...
python爬虫抓取数据 小试Python--爬虫抓取大众点评上的数据 发布时间:2017-04-07
- 如何用python爬股票数据_python爬虫股票数据,如何用python 爬虫抓取金融数据
Q1:如何用python 爬虫抓取金融数据 获取数据是数据分析中必不可少的一部分,而网络爬虫是是获取数据的一个重要渠道之一.鉴于此,我拾起了Python这把利器,开启了网络爬虫之路. 本篇使用的版本为 ...
- Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储(转)
Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...
- Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资 ...
- python爬虫招聘-Python爬虫抓取智联招聘(基础版)
原标题:Python爬虫抓取智联招聘(基础版) 作者:C与Python实战 「若你有原创文章想与大家分享,欢迎投稿.」 对于每个上班族来说,总要经历几次换工作,如何在网上挑到心仪的工作?如何提前为心仪 ...
- Python学习教程:Python爬虫抓取技术的门道
Python学习教程:Python爬虫抓取技术的门道 web是一个开放的平台,这也奠定了web从90年代初诞生直至今日将近30年来蓬勃的发展.然而,正所谓成也萧何败也萧何,开放的特性.搜索引擎以及简单 ...
最新文章
- mysql2008 limit,在SQL Server中实现 Limit m, n 的功能
- php的正则怎么写,一个正则的写法 php
- 机器学习中的数学 人工智能深度学习技术丛书
- 效率系列(四) VS常用快捷键
- shell之常用工具的使用
- (教学思路 c#之类一)声明类和对象、定义类成员及其引用
- python内存管理错误的是_解读Python内存管理机制(转载)
- 蚂蚁集团换帅!胡晓明辞任 CEO
- 【Python实例第12讲】谱系共聚类法
- 一字之差——手机中的“拼”音输入法和“注”音输入法
- C/C++二路归并排序
- C#实现所有CRC8,CRC16,CRC32校验算法
- 基于RFID定位技术的精神病人员定位解决方案--新导智能
- 关闭Software Reporter Tool
- 【多模态】《Visual7W: Grounded Question Answering in Images》论文阅读笔记
- 阿古斯机器人_燃烧王座:暗牧神器新语音暗示虚空之力
- 运输小猫(斜率优化)
- windows系统自带工具dxdiag查看电脑信息
- 最通俗易懂的SpringBoot经典学习笔记讲解
- 单利终值和现值matlab,单利终值现值和复利终值现值公式