1 import requests 2 from bs4 import BeautifulSoup 3 import bs4 4 5 def getHTMLText(url): 6 try: 7 r = requests.get(url, timeout = 30) 8 r.raise_for_status() 9 r.encoding = r.apparent_encoding 10 return r.text 11 except: 12 return "" 13 14 def fillUnivList(ulist, html): 15 soup = BeautifulSoup(html, "html.parser") 16 for tr in soup.find(‘tbody‘).children: 17 if isinstance(tr, bs4.element.Tag): 18 tds = tr(‘td‘) 19 ulist.append([tds[0].string, tds[1].string, tds[2].string]) 20 21 def printUnivList(ulist, num): 22 print("{:^10}\t{:^6}\t{:^10}".format("排名", "学校名称", "总分")) 23 for i in range(num): 24 u = ulist[i] 25 print("{:^10}\t{:^6}\t{:^10}".format(u[0], u[1], u[2])) 26 27 #主函数 28 def main(): 29 uinfo = [] 30 url = ‘http://www.zuihaodaxue.cn/zuihaodaxuepaiming2016.html‘ 31 html = getHTMLText(url) 32 fillUnivList(uinfo, html) 33 printUnivList(uinfo, 20) # 20所大学 34 main()
:
|
<填充>
|
<对齐>
|
<宽度>
|
,
|
<.精度>
|
<类型>
|
引导符号
|
用于填充的单个字符
|
<左对齐
>右对齐
^居中对齐
|
槽的设定输出宽度
|
数字的千分位分隔符适用于整数和浮点数
|
浮点数小数备部分的精度或字符串的最大输出长度
|
整数类型:b,c,d,o,x,X浮点数类型:e,E,f,%
|
1 import requests 2 from bs4 import BeautifulSoup 3 import bs4 4 5 def getHTMLText(url): 6 try: 7 r = requests.get(url, timeout = 30) 8 r.raise_for_status() 9 r.encoding = r.apparent_encoding 10 return r.text 11 except: 12 return "" 13 14 def fillUnivList(ulist, html): 15 soup = BeautifulSoup(html, "html.parser") 16 for tr in soup.find(‘tbody‘).children: 17 if isinstance(tr, bs4.element.Tag): 18 tds = tr(‘td‘) 19 ulist.append([tds[0].string, tds[1].string, tds[2].string]) 20 21 def printUnivList(ulist, num): 22 tplt = "{0:^10}\t{1:{3}^10}\t{2:^10}" 23 print(tplt.format("排名", "学校名称", "总分", chr(12288))) 24 for i in range(num): 25 u = ulist[i] 26 print(tplt.format(u[0], u[1], u[2], chr(12288))) 27 28 #主函数 29 def main(): 30 uinfo = [] 31 url = ‘http://www.zuihaodaxue.cn/zuihaodaxuepaiming2016.html‘ 32 html = getHTMLText(url) 33 fillUnivList(uinfo, html) 34 printUnivList(uinfo, 20) # 20所大学 35 main()
原文:https://www.cnblogs.com/beiyin/p/9129568.html