这是一个非常简单的项目,定向爬取中国大学的排名,这个项目采用了bs4和requests路线实现了中国大学排名定向爬虫,在示例代码中,并对中英文混排输出问题进行了优化,可以使输出的内容更加整齐。
这个项目也是我作为初学者刚开始学习的项目,希望大家可以一起学习,相互探讨。
1. 未采用函数的方式进行爬取
这种方式比较容易理解,适合新手去学习,但一般只适用于简单,代码量比较少的项目。
示例代码:
import requests
from bs4 import BeautifulSoup
url='http://www.zuihaodaxue.com/zuihaodaxuepaiming2018.html'
html_text=requests.get(url,timeout=30)
html_text.raise_for_status()
html_text.encoding=html_text.apparent_encoding
soup=BeautifulSoup(html_text.text,'html.parser')
ulist=[]
tbody=soup.find('tbody')
for tr in tbody.find_all('tr'):
tds=tr('td')
ulist.append([tds[0].string,tds[1].string, tds[3].string])
tplt = "{0:^10}\t{1:{3}^10}\t{2:^10}"
print(tplt.format("排名","学校名称","总分",chr(12288)))
for inf