爬取軟科中國最好大學排名
阿新 • • 發佈:2018-11-13
作為一個剛學會使用BeautifulSoup的菜鳥我二話不說直接把align='left’屬性作為它們共同特點,敲了兩下程式碼順便複習了一下python基本語法,果不其然一下就爬下來了。
import requests
from bs4 import BeautifulSoup
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
} #偽裝成360瀏覽器
url = 'http://www.zuihaodaxue.com/zuihaodaxuepaiming2018.html'
html = requests.get(url,headers = headers)
html.encoding = html.apparent_encoding
soup = BeautifulSoup(html.text,'lxml')
a = soup.body
b = a.find_all(attrs={'align': 'left'}) #找到所有標籤帶有align='left'屬性的標籤
num = 1
for div in b:
print("No.%s %s" %(num,div.string)) #輸出找到標籤的內容也就是大學名字
num += 1
有圖有真相
結果:
其中最實用的是 b = a.find_all(attrs={‘align’: ‘left’}) 直接定位在帶有學校名的標籤在用’.string’輸出標籤內的內容