来源:zuiziyoudexiao 链接:
https://blog.csdn.net/zuiziyoudexiao/article/details/108227085
使用 python requests 库爬取福布斯排行榜数据存放到本地excel文件,并通过matplotlab将数据进行分析和可视化
原网页如下所示
https://www.phb123.com/renwu/fuhao/shishi.html
![51407736ceb754a37048c7429286e759.png](https://img-blog.csdnimg.cn/img_convert/51407736ceb754a37048c7429286e759.png)
1. 保存的excel数据
![ad19dd6cc0e6263430272c1f1294ff5f.png](https://img-blog.csdnimg.cn/img_convert/ad19dd6cc0e6263430272c1f1294ff5f.png)
![51407736ceb754a37048c7429286e759.png](https://img-blog.csdnimg.cn/img_convert/51407736ceb754a37048c7429286e759.png)
2. 福布斯前十排行的数据可视化效果
![4b97b3710b2a2c7c6d05e304841608b1.png](https://img-blog.csdnimg.cn/img_convert/4b97b3710b2a2c7c6d05e304841608b1.png)
![51407736ceb754a37048c7429286e759.png](https://img-blog.csdnimg.cn/img_convert/51407736ceb754a37048c7429286e759.png)
3. 各国上榜人数所占比例的统计与可视化
![51407736ceb754a37048c7429286e759.png](https://img-blog.csdnimg.cn/img_convert/51407736ceb754a37048c7429286e759.png)
4. 爬取网页数据解析为一个list集合
## 读取一页的数据def loaddata(url):from bs4 import BeautifulSoupimport requestsheaders = {
'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) ''Chrome/72.0.3626.121 Safari/537.36'}f = requests.get(url,headers=headers) #Get该网页从而获取该html内容soup = BeautifulSoup(f.content, "lxml") #用lxml解析器解析该网页的内容, 好像f.text也是返回的html# print(f.content.decode()) #尝试打印出网页内容,看是否获取成功ranktable = soup.find_all('table',class_="rank-table" )[0] #获取排行榜表格trlist = ranktable.find_all('tr') #获取表格中所有tr标签trlist.pop(0) #去掉第一个元素persionlist = []for tr in trlist:persion = {}persion['num'] = tr.find_all('td')[0].string #编号persion['name'] = tr.find_all('td')[1].p.string #名称persion['money'] = tr.find_all('td')[2].string #财产persion['c