爬蟲02 bs4庫02 中國大學排名

2021-10-08 07:08:18 字數 1378 閱讀 6631

1.用requests庫獲取源**

2.用beautifulsoup庫遍歷、分析得到需要資料

3.根據要求使用.format格式化輸出

import requests

from bs4 import beautifulsoup

url = ""

def gethtmltext(url):

try:

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

r.raise_for_status()

return r.text

except:

return ""

def fillunivlist(ulist, html):

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

import bs4

for tr in soup.find('tbody').children: # 首先根據源**分析出所有學校資訊都在tbody標籤下的tr標籤下

if isinstance(tr, bs4.element.tag): #判斷tr是不是bs4中的標籤型別

tds = tr('td') #取出所有的td標籤

def printunivlist(ulist, num):

tplt = "^10}\t<10}\t<10}\t<10}"

# print("\t\t\t".format("排名","校名","位址","總分"))

print(tplt.format("排名", "校名", "位址", "總分",chr(12288)))

for i in range(num):

u = ulist[i]

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

print("suc" + str(num))

if __name__ == '__main__':

uinfo = #定義乙個空的列表

num = 30

url = ""

html = gethtmltext(url)

fillunivlist(uinfo,html)

printunivlist(uinfo,num)

關於 .format格式輸出:

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

參考:

^   居中     後面帶寬度,

< 左對齊 後面帶寬度,

> 右對齊

: 號後面帶填充的字元,只能是乙個字元,不指定則預設是用空格填充,用chr(12288)是中文空格。

爬蟲架構 bs4

方便解析html xml等格式的原始碼,快速查詢 修改等操作,節省數小時乃至更多的工作時間 官網文件 from bs4 import beautifulsoup print path beautifulsoup path 非真實網頁 html doc 夏日炎炎,要你幹嘛 print soup.hea...

爬蟲 bs4模組

安裝 pip3 install beautifulsoup4 解析html和xml,修改html和xmlimport requests from bs4 import beautifulsoup 文件容錯能力,不是乙個標準的html也能解析 soup beautifulsoup html doc,l...

爬蟲 資料解析 bs4

正規表示式實現資料解析 需求 爬取糗事百科中糗圖資料 import requests headers 方式1 url img data requests.get url url,headers headers content content返回的是byte型別的資料 方式2 方式2不可以使用ua偽裝...