利用python爬取虎扑的数据并可视化数据处理

1.先给出爬取效果图,存成一个csv文件
在这里插入图片描述

具体python代码

# -*- coding: utf-8 -*-
"""
Spyder Editor

This is a temporary script file.
"""
from urllib.parse import urlencode
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support import expected_conditions as EC
from lxml import etree
import time,random
import csv
from selenium.webdriver.support.wait import WebDriverWait

class spiderall(object):
    #设置一个构造器
    def __init__(self,url):
        self.url=url
        #调用spider函数
        self.spider(url)
    def spider(self,url):
        #获取浏览器
        browser=webdriver.Chrome()
        #打开地址
        browser.get(url)
        #窗口最大化
       # browser.maximize.window()
        #打开一个csv文件
        fo=open("湖人数据文件.csv",'a',encoding="utf-8")
        out=csv.writer(fo)
        out.writerow(["对阵球队","詹姆斯","布拉德利","波谱","霍华德","戴维斯","格林","卡鲁索","首发得分","替补得分","对阵球队","对方主力得分","对方替补得分","胜负"])
        fo.flush()
        fo.close()#关闭输入流
        
        for i in range(1,80):
            try:
                #先找到数据中心
                data_center=browser.find_element_by_xpath('//table/tbody/tr[@class="left"]['+str(i)+']/td[5]/a')
                #开赛时间
                sdate=browser<
  • 2
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您提供以下步骤: 1. 安装必要的库 您需要安装以下库: - requests:用于获取HTML页面 - BeautifulSoup:用于解析HTML页面 - pandas:用于将数据保存至Excel - matplotlib:用于数据可视化 可以使用以下命令进行安装: ``` pip install requests pip install beautifulsoup4 pip install pandas pip install matplotlib ``` 2. 获取页面数据 我们可以使用requests库获取足球球员页面的HTML源代码。代码如下: ```python import requests from bs4 import BeautifulSoup url = 'https://nba.hupu.com/players/' response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') ``` 3. 解析数据 我们可以使用BeautifulSoup库来解析HTML页面。通过分析球员页面的HTML源代码,我们可以发现,球员信息保存在一个表格(table)中。我们可以使用以下代码来获取表格数据,并将其转化为一个列表列表。 ```python table = soup.find_all('table', {'class': 'players_table'})[0] rows = table.find_all('tr')[1:] data = [] for row in rows: cols = row.find_all('td') cols = [col.text.strip() for col in cols] data.append(cols) ``` 4. 保存数据至Excel 我们可以使用pandas库来将数据保存至Excel。以下是保存数据的代码: ```python import pandas as pd df = pd.DataFrame(data, columns=['球员', '球队', '位置', '身高', '体重', '生日']) df.to_excel('players.xlsx', index=False) ``` 5. 数据可视化 我们可以使用matplotlib库来对数据进行可视化。以下是代码示例: ```python import matplotlib.pyplot as plt df['身高'] = df['身高'].apply(lambda x: int(x.replace('cm', ''))) df['体重'] = df['体重'].apply(lambda x: float(x.replace('kg', ''))) df['生日'] = pd.to_datetime(df['生日']) df['年龄'] = pd.Timestamp.now().year - pd.DatetimeIndex(df['生日']).year fig, ax = plt.subplots() ax.scatter(df['身高'], df['体重'], c=df['年龄'], cmap='cool') ax.set_xlabel('身高(cm)') ax.set_ylabel('体重(kg)') ax.set_title('球员身高体重分布图') plt.show() ``` 这样,我们就可以将足球球员信息爬取并保存至Excel,同时进行数据可视化啦!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值