当前位置:   article > 正文

Python爬虫,爬取2020年软科中国大学排名并进行数据清洗与可视化输出_中国高校排名因素python

中国高校排名因素python

写在前面

使用python对【软科-高等教育评价领先品牌 https://www.shanghairanking.cn/rankings/bcur/2020】进行爬取,然后存到sql数据库中(也有excel的代码),并且进行分析,获得每个省份的大学的种类的分布图。
这个项目特别有纪念意义,因为它让我深刻认识了SQL数据库语句的魅力还有matplotlib的重要性,另外还有Echarts的强大,还有如何通过修改官方实例得到自己想要的结果,还有urllib 爬虫与BeautifulSoup 网页解析。是一个很全面的锻炼。很多的注释没有删掉,是自己编敲边试的结果。
每个省份的大学的种类的分布图

爬虫与数据存储(excel&sql)

import bs4
from bs4 import BeautifulSoup  #网页解析,获取数据
import urllib #订制url,获取网页数据
import urllib.error #请求网页如果出错的时候的分析
import urllib.request #请求网页获取
import re
import os
import requests
import time
import numpy as np
import xlwt
import sqlite3


def main():
    #1.爬取网页
    baseurl = "https://www.shanghairanking.cn/rankings/bcur/2020"
    print(baseurl)
    # ask_URL(baseurl) #自建函数,获取网页并存储为本地文本

    #2.分析数据,解析数据(边爬取边解析,逐一解析,循环语句)
    get_data(baseurl) #自建函数,获取网页的本地文本里面的有用的表单



#得到指定某一个url的网页的内容,这是最基础的函数
def ask_URL(url):
    head = {
   "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36"}
    request = urllib.request.Request(url, headers=head)
    html = ""
    try:
        response = urllib.request.urlopen(request)
        html = response.read().decode("utf-8")
        print(html)
    except urllib.error.URLError as e:
        if hasattr(e, "code"):
            print(e, code)
        if hasattr(e, "reason"):
            print(e, reason)
    print("访问成功")
    return html #最后返回,网页文本

def get_data(baseurl):
    data_list = []
    # html = ask_URL(baseurl)
    html = open(r'./大学.html',"rb")
    # print(html)
    soup = BeautifulSoup(html, "html.parser")
    # print(soup)
    for item in soup.select('tr > td'):
        rx = item.get_text()
        re = rx.replace("\r\n", "")
        data_list.append(re.strip())
    print(data_list)
    print(len(data_list))
    print(data_list[0:6])
    print(data_list[0:6])
    ranking0 = []
    uname1 = []
    city2 = []
    info3 = []
    totalscore4=[]
    partscore5=[]
    ranking0.extend(data_list[0:
  • 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
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/798197
推荐阅读
相关标签
  

闽ICP备14008679号