編程小白,最近把python的基礎語法看完了,今天找了b站北理工老師教的爬蟲入門課,開始覺得還好,講到beautifulsoup那裡,就提到了標籤一些概念,之前都沒有學習過,我看彈幕說這是前端html的內容(不懂),請問一下大家,學習爬蟲是否需要先學習html?


要。

不要求自己能寫,但求能完全看懂。

作為一個有追求的程序員,不僅要會html,還要懂css,更要會js

說來你可能不信,但判斷一個爬蟲工程師的水平如何,可以用js來衡量

(資深爬蟲,不在乎js逆向,驗證碼。)

如果想爬蟲一條路走到黑,學好前端很重要


是的需要學習前端的東西,只是不用學得那麼深非要自己就能寫出網站的那種程度,但是至少得知道網頁是怎麼拿到後端的數據,怎麼顯示出來的。因為爬蟲絕大部分都是在爬網頁上的數據,如果你連網頁是怎麼展示數據的都不知道,你就不知道該怎麼去獲取你想要的數據了。


難道不是TCP/IP協議、HTTP協議,wireshark抓包等基礎知識么? 這些讓你知道怎麼通過認證,抓下來數據;

然後就是用re正則表達式匹配,過濾,找數據。。。

html完全不需要學啊,知道點大概就可以了


顯然。不理解html,怎麼爬數據呢?至少要了解。


你如果只是簡單的把網頁給弄下來,那不需要,如果你需要解析網頁的內容,結構化數據的話,多多少少都得懂點html和css或者xpath,要不然你都不知道咋定位到元素,雖然說一些瀏覽器插件可以獲取到元素的xpath,但是有時候還是有點問題的,需要自己有所了解。


當然需要學習,但是不是重點,幾個標籤,搞清楚規則就行了,差不多2天時間最多了,再多,說明你可能已經走偏了。其實很多時候為了反爬,要學習的東西才是更多的,JavaScript,代理,IP池,驗證碼,加密,HTTP協議細節等,另外還有分散式爬蟲,規則定義,這些東西才是要點。如果對這些方面不懂的話,可以私我,我可以提供一些力所能及的指導。


需要,不然扒下來的數據怎樣清洗?在爬的過程中,你會發現要學的越來越多


html標籤都不知道,怎麼定位呢,怎麼知道爬哪裡呢?

所以顯然答案是:是的。


是的,學習爬蟲需要先學習 HTML。但是不需要學得像前端工程師那麼深入。有人說過:

用最短時間刷得最核心的 20% 知識點,然後就直接來解決實際問題吧。

我最近發現了一個 X 分鐘速成 Y 的教材集合,你可以學學裡面的 HTML 速成。如果感覺還沒有頭緒再來學 W3School 裡面的 HTML 教程。在學習 HTML 的同時最好同時結合 XPath 來學。在開始學習 XPath 前可以先大概了解一下 Chrome 開發者工具,Chrome 是我的主力瀏覽器,如果你用其他瀏覽器,可能也有類似功能的。當你要定位元素時,在 Chrome 開發者工具中,右鍵 Copy XPath 你就能知道一個元素的 XPath 是怎麼表示的了。還要掌握的是 Console 里的 $x 命令,在 Console 中輸入 $x(你的表達式),回車就會返回能匹配輸入表達式的元素。

以上,對於初學爬蟲來說就夠了,畢竟你的主力是學爬蟲嘛。但並不是讓你停止學習,是解決實際問題時學,在做中學。

最後,貼出我在知乎想法中關於 Learn X in Y minutes 中的簡短介紹;和 W3School HTML 教程:

【強烈安利 Learn X in Y minutes】 Lear…?

www.zhihu.com圖標W3School HTML 教程?

www.w3school.com.cn

HTML 速成

W3School HTML 教程


需要學學html,用bs4時候學學html。用scrapy時候學學xpath。其實這些很簡單,學習成本很低。

放一個教程,希望能幫到你

【Python爬蟲】寫一個爬取中國天氣網的終端版天氣預報爬蟲?

mp.weixin.qq.com圖標

在學習Python一年中,收集了很多Python學習資料,在這裡整理一下,分享給各位!

Python入門、數據分析、爬蟲、運維、機器學習方面的學習資料

乾貨 | Python學習資源整理分享?

mp.weixin.qq.com圖標

如果覺得本文還可以,還請各位點個贊。


需要。w3school的html課程入門足以。


不然你怎麼解析DOM?


肯定需要學html,標籤都不知道你爬啥?css選擇器至少得會用吧

給你個建議,爬蟲比較坑,盡量別碰,學多了你就知道我的話什麼意思了,網上的課程學會爬點小黃圖就行了,多了就別想了


不需要~以爬蟲後端技能為主,前端先了解一些請求信息即可


要的,這是基礎,網路基本知識還是要的,不然有時候你都不知道爬取哪個節點


建議前端HTML可以先學個大概,後面做項目的時候在進行全面鞏固和學習。

我最初學爬蟲的時候,根本就沒看html,學的時候就照著教程寫,基本的HTML也認識了。

Python對於初學者來說很友好,語法比較簡單,而Python爬蟲呢,也是很容易出成果的,能夠很快地看到效果,這種成就感對於初學者來說是一種大大的激勵。雖然迎難而上是很好的品質,每樣技能都是穩紮穩打,學得扎紮實實最好但是實際上,人的精力,學習能力有限,學習上遇到困難,感到挫折已是常事,所以初學階段,夠用即可。在之後的實戰過程中,你還會遇到各種各樣的困難,到時候再針對性地回頭補補基礎就好了。全面學習包括很多:代碼優化、設計模式、緩存、資料庫、網站安全、日誌、許可權及項目核心模塊研發... 我覺得還是有比較多的東西去做的,CURD僅僅是你為了完成業務而做的重複性工作。有時候引用了開源框架,可能這些東西都有,但是我覺得樓主還是應該嘗試開發和使用這些東西,萬一哪一天從http轉到tcp了,這些技能對你來說特別受益。

感覺爬蟲課里會把需要的點覆蓋到~ 不用專門學~


正則表達式,html,xpath對做爬蟲來說都是必須的,你應當關注這三個,尤其xpath, 能不能很好的定位元素,很關鍵。


簡單學習下,各種元素,&

,&,&等等要定位元素,css也要學下,要深入爬取,JavaScript也要學,因為你可能用到selenium框架操作瀏覽器,插入JavaScript,或者執行網頁里的JavaScript。多學一些沒有壞處,磨刀不誤砍柴工。


是要的,還是需打下一定的基礎,但是這部分內容不用研究的特別深入,如果一般的數據獲取,可以查看是否有已經寫好的代碼或者工具,比如 AkShare 就開源了幾百個財經數據介面:

https://github.com/jindaxiang/akshare?

github.com


推薦閱讀:
相关文章