当前位置:   article > 正文

python爬虫福布斯排行榜数据并可视化_python福布斯榜单

python福布斯榜单
  • 使用python requests库爬取福布斯排行榜数据存放到本地excel文件,并通过matplotlab将数据进行分析和可视化
  • 原网页如下所示 https://www.phb123.com/renwu/fuhao/shishi_1.html
    在这里插入图片描述
  • 保存的excel数据如下所示
    在这里插入图片描述
  • 福布斯前十排行的数据可视化效果
    在这里插入图片描述
  • 各个国家上榜人数所占比例的统计与可视化
    在这里插入图片描述
  • 爬取网页数据解析为一个list集合的代码
## 读取一页的数据
def loaddata(url):
   from bs4 import BeautifulSoup
   import requests
   headers = {
       '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['company'] = tr.find_all('td')[3].string #企业
      persion['country'] = tr.find_all('td')[4].a.string #国家
      persionlist.append(persion)
   print("页面"+url+"爬取成功")
   return persionlist


## 读取所有福布斯排行榜
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/696004
推荐阅读
相关标签
  

闽ICP备14008679号