#041爬蟲beautifulsoup 使用信安培訓2019年5月25日

爬蟲beautifulsoup 使用信安培訓2019年5月25日

beautifulsoup

beautifulsoup安裝

 

CMD命令行pip安裝beautifulsoup4庫
CMD命令行pip安裝beautifulsoup4庫

 

學習樣例題目

題目地址

題目連接php

 

題目截圖
題目截圖

 

解題步驟

beautifulsoup 快速講解

查看源代碼

 

算式位置在p標籤中 name=‘myexpr’的div中
算式位置在p標籤中 name=‘myexpr’的div中

 

代碼

import requests
from bs4 import BeautifulSoup
r = requests.get('http://ctf5.shiyanbar.com/jia/index.php')
r.encoding = r.apparent_encoding
soup = BeautifulSoup(r.text,'html.parser')
a = soup.find_all('div',{"name":"my_expr"})

 

匹配相應數據
匹配相應數據

 

代碼2

只有一個p標籤
因此能夠直接這麼使用直接匹配phtml

b=soup.p.div.get_text()

例題二爬取中國大學排名

題目地址python

解析出排名和大學名稱便可app

 

大學排名網站
大學排名網站

 

from bs4 import BeautifulSoup
import requests

r = requests.get('http://www.zuihaodaxue.cn/zuihaodaxuepaiming2019.html')
r.encoding = r.apparent_encoding
attr = {"class":"table table-small-font table-bordered table-striped"}

soup = BeautifulSoup(r.text,'html.parser')
a = soup.find('table',attr)
a = a.find_all('tr',{"class":"alt"})
result = '排名,大學\n'
for i in a:
    result += i('td')[0].text +','+i.div.text+'\n'
with open('rank.csv','w') as f:
    f.write(result)
相關文章
相關標籤/搜索