小白學爬蟲筆記9 例項 中國好大學排名

2021-08-21 22:32:10 字數 1316 閱讀 9497

html = ''
獲取網頁內容

提取資料結構

展示資料結果

gethtmltext()

fillunivlist()

printunivlist()

import requests

import bs4

from bs4 import beautifulsoup

def gethtmltext(url):

try:

r = requests.get(url,timeout = 30)

r.raise_for_status()

return r.text

except:

return ""

def fillunivlist(ulist,html):

soup = beautifulsoup(html, "html.parser")

for tr in soup.find('tbody').children:

if isinstance(tr,bs4.element.tag):

tds = tr('td')

pass

def printunivlist(ulist,num): # num 學校的個數 ; 格式化輸出:format函式

print("\t\t".format("排名","學校名稱","總分"))

for i in range(num):

u=ulist[i]

print("\t\t".format(u[0],u[1],u[2]))

print("suc" + str(num))

def main():

uinfo =

url = ''

html = gethtmltext(url)

fillunivlist(uinfo,html)

printunivlist(uinfo,20) # 20 univs

main()

問題:

* 中英文不對齊:字元寬度不同

採用中文字元的空格填充chr(12288)

def printunivlist(ulist,num):

tplt = "\t^10}\t" #3指中文

print(tplt.format("排名","學校","分數",chr(12288)))

for i in range(num):

u=ulist[i]

print(tplt.format(u[0],u[1],u[2],chr(12288)))

中國最好大學排名爬取例項

從網頁上獲取html 用requests庫get方法 提取網頁內容到資料結構 比如列表 元組 字典 集合set 將處理後的資料結構展示 import requests from bs4 import beautifulsoup import bs4 defgethtmltext url try r ...

Python爬蟲實現 中國最好大學排名2016

中國最好大學排名網 輸入 url,num 列印行數 輸出 三個函式 獲取原始碼 defgethtmltext url try r requests.get url,timeout 30 r.raise for status 檢查狀態是否合法 return r.text except return 返...

python3爬蟲 中國最好大學排名

使用python的requests和beautifulsoup爬取前20個中國最好的大學,內容 於最好大學這個 不需要登陸,直接可以訪問靜態網頁內容,網頁如下 直接可以提取資訊,非常適合練習requests和beautifulsoup功能.主程式需要幾個部分組成 首先載入必要的包 import re...