|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #-*- coding:utf-8 -*-
- import re
- import requests
- import pygal
- class Game(object): #用于下载和绘制吃鸡游戏的雷达图
- def __init__(self): #__init__()方法称为构造方法,__init__()方法只要实例化一个对象,这个方法就会在对象被创建时自动调用
- self.url = 'https://pubgm.qq.com/zlkdatasys/a20171229jdcs/list.shtml'
- self.response = requests.get(self.url)
- print(self.response.status_code)
- html = self.response.content.decode('gbk')
- #每个枪的网址
- self.res = re.compile(r'<a href=".+?" target="_blank" class="btn_xq datum_list_sp"')
- self.reg = re.findall(self.res,html)
- self.name = re.findall(r'<div class="qx_tab_name">(.*?)</div>',html)
- self.names = self.name[1:8]
- print(self.names)
- def plotGame(self):
- #用于绘制图
- data = []
- num = 0
- #枪的性能
- for ii in self.reg:
- if num <7:
- num += 1
- ii = 'https://pubgm.qq.com'+ii
- a = requests.get(ii).text
- self.res1 = re.compile(r'<span style="width:(.*?)%;"></span>')
- self.reg1 = re.findall(self.res1,a)
- data.append([int(self.reg1[0]),int(self.reg[1]),int(self.reg1[2]),int(self.reg[3])])
- #调用Radar这个类,并设置雷达图的填充(fill='True'),及数据范围(range=(0,100))
- radar_chart = pygal.Radar()
- radar_chart.title = '步枪性能'
- radar_chart.x_labels = ['射速','威力','射程','稳定']
- for ff,property in zip(self.names,data):
- print(ff,property)
- #绘制雷达图区域
- radar_chart.add(ff,property)
- #radar_chart.render_to_file('radar.svg')
- if __name__ == '__main__':
- game = Game()
- game.plotGame()
复制代码
a = requests.get(ii).text 这一行出错
|
|