第0關(guān) 問題1: 課程內(nèi)容里有這么一部分遇到亂碼時(shí)用 res.encoding定義編碼時(shí),,課上說要這么去實(shí)現(xiàn): requests庫(kù)會(huì)對(duì)數(shù)據(jù)的編碼類型判斷不準(zhǔn)確,就會(huì)出現(xiàn)一堆亂碼,,那我們就可以去查看目標(biāo)數(shù)據(jù)的編碼,,然后再用res.encoding把編碼定義成和目標(biāo)數(shù)據(jù)一致的類型即可。 那么這里目標(biāo)數(shù)據(jù)的編碼怎么去查詢呢,? A:打開檢查,,在html源代碼中,如下圖
第一關(guān) 問題1: 最后的練習(xí),,自己在課程的環(huán)境里可以修改,,但是怎么樣在真正的網(wǎng)頁(yè)上去修改添加一本書的描述呢?添加一個(gè)div啥的 選了開發(fā)者模式 感覺雙擊某一個(gè)要修改的區(qū)域 只能改名字啥的 添加不了東西呀,? A:具體問題具體分析,,課程上的網(wǎng)頁(yè)是為了教學(xué)而準(zhǔn)備的,所以可以進(jìn)行修改,,但一般其它的正常網(wǎng)站,,是不能修改的,畢竟服務(wù)是別人的,,修改之后也是自行能看而已,,修改的方式可以將html代碼都爬取到一個(gè)txt文檔,通過添加里面的元素塊就可以了~ 問題2: 把剛才請(qǐng)求到的HTML源文件復(fù)制粘貼,,在vscode中保存為后綴為.html 的文檔,,它就是一個(gè)保存在你本地中的網(wǎng)頁(yè)了,。但是我這里發(fā)現(xiàn)寫入本地的html 只有文本 怎么樣可以同時(shí)儲(chǔ)存網(wǎng)頁(yè)的文本和圖片?
A:這里是無法一起爬取的,,因?yàn)榕老x的本身就是對(duì)某一數(shù)據(jù)的單獨(dú)提取,,有些時(shí)候爬取所有本文,在運(yùn)行html代碼時(shí),,發(fā)現(xiàn)圖片是無法顯示的,,這也是因?yàn)閳D片是屬于服務(wù)器上的圖片,并不是自己本地的電腦圖片,,所以導(dǎo)致無法顯示~ 問題3: 在這里,,5.0對(duì)比4.0版本變化的部分是:(第9、19,、29行)給h2元素標(biāo)注了name屬性,,< section id='nav'>中的超鏈接標(biāo)簽(第3、4,、5行)以這個(gè)name屬性為標(biāo)識(shí),,設(shè)置了跳轉(zhuǎn)到這個(gè)標(biāo)題的錨點(diǎn);(第10,、20,、30行)給書名添加了超鏈接,可以鏈接到這本書的豆瓣主頁(yè),;以及,,(第12、22,、32行)用<img>標(biāo)簽添加了書的封面圖片,。 https://localprod./python-manuscript/crawler-html/spider-men5.0.html 這里的< section id='nav'>中的超鏈接標(biāo)簽是什么,?我并沒有找到這個(gè)東西,? A:< section id='nav'>只是一個(gè)屬性和屬性值,并沒有跳轉(zhuǎn)的用意,,這相當(dāng)于一個(gè)標(biāo)題的定位 問題4: 想知道這里的<br>是什么,??
A:<br>是換行的意思 問題5: 網(wǎng)頁(yè)信息如何理解,? A:
問題6: 為什么get三國(guó)的那個(gè)網(wǎng)址得到的是文本,,而get這個(gè)書苑不太冷的網(wǎng)址得到的是源代碼? A:因?yàn)槿龂?guó)那個(gè)網(wǎng)址對(duì)應(yīng)的就是一個(gè)文本文件,,而這個(gè)書苑不太冷的網(wǎng)址就只是對(duì)應(yīng)一個(gè)網(wǎng)址 .md結(jié)尾和.html結(jié)尾的區(qū)別,。
|