中國最好大學排名網
輸入:
url,num(列印行數)
輸出:
三個函式:
#獲取原始碼
defgethtmltext
(url):
try:
r = requests.get(url, timeout=30)
r.raise_for_status() #檢查狀態是否合法
return r.text
except:
return
""#返回空串
#用beautifulsoap類寫到列表裡
deffillunivlist
(ulist, html):
soup = beautifulsoup(html, "html.parser") #用html形式
for tr in soup.find('tbody').children: #觀察原始碼在tbody標籤內的tr標籤裡面
if isinstance(tr, bs4.element.tag): #檢查是否為bs4裡的標籤
tds = tr('td') #將tr標籤內有td標籤的存到tds列表中
#列印函式 num為列印行數
defprintunivlist
(ulist,num):
print("\t\t".format("排名","學校名稱","總分")) #format的用法
for i in range(num):
u=ulist[i]
print("\t\t".format(u[0],u[1],u[2]))
具體實現:
import requests
from bs4 import beautifulsoup
import bs4
defgethtmltext
(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')
defprintunivlist
(ulist,num):
print("\t\t".format("排名","學校名稱","總分"))
for i in range(num):
u=ulist[i]
print("\t\t".format(u[0],u[1],u[2]))
defmain
(): uinfo= #列表
url=""
html=gethtmltext(url)
fillunivlist(uinfo,html)
printunivlist(uinfo,20)
main()
python3爬蟲 中國最好大學排名
使用python的requests和beautifulsoup爬取前20個中國最好的大學,內容 於最好大學這個 不需要登陸,直接可以訪問靜態網頁內容,網頁如下 直接可以提取資訊,非常適合練習requests和beautifulsoup功能.主程式需要幾個部分組成 首先載入必要的包 import re...
Python爬蟲 爬取最好大學網學校資訊
首先給出 最好大學網 print 響應失敗 return def fillunivlist ulist,html soup beautifulsoup html,html.parser for tr in soup.find tbody children if isinstance tr,bs4.e...
中國最好大學排名爬取例項
從網頁上獲取html 用requests庫get方法 提取網頁內容到資料結構 比如列表 元組 字典 集合set 將處理後的資料結構展示 import requests from bs4 import beautifulsoup import bs4 defgethtmltext url try r ...