为什么python3.6说url is not defined,代码是是中国大学排名的那个实例

 

你这个代码不全,并且采集的这个页面用的ajax加载的数据,源代码里面是没有内容的,可以直接请求接口获取数据(json格式的),解析json数据获取内容就行了。

对你有帮助能点个采纳吗,谢谢~~

import requests
import json
  
def getHTMLText(url):
    try:
        r = requests.get(url,timeout=30)
        r.raise_for_status()
        r.encoding = r.apparent_encoding
        return r.text
    except:
        return ""
        
def main():
    uinfo = []
    url = 'https://www.shanghairanking.cn/api/pub/v1/bcur?bcur_type=11&year=2021'
    html = getHTMLText(url)
    data= json.loads(html)
    rankings=data["data"]["rankings"]
    for i,item in enumerate(rankings):
        print (str(i)+"."+item["univNameCn"])
        if i>20:
            break
        
main()

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632