本系列將由淺入深給大家介紹網絡爬蟲,一步一步教大家學會怎么分析請求,抓取數(shù)據,真正意義上爬取一切你想要的!
本章介紹:爬蟲簡介以及如何分析網絡請求
一、什么是爬蟲?能做什么?
爬蟲,一般互聯(lián)網上叫做網絡爬蟲,高端點的將叫Web Spider,如果互聯(lián)網是一張蜘蛛網,那Spider就是在網上爬來爬去的蜘蛛。通俗點講,就是使用程序請求網頁/接口,得到數(shù)據并做合理的處理,轉換為你想要的數(shù)據格式。常見的爬蟲一般使用Python來編寫,但不僅限于此,各種語言都能拿來做爬蟲,本系列主要以C#語言來展開對爬蟲的介紹。
WebSpider
二、爬蟲之數(shù)據來源分析-網絡請求
不管是網頁端/App端/微信端,我們所能看到的頁面上的內容,其實大多都是通過網絡請求獲取得到的,當你看到正在加載/請稍后類似字樣的時候,往往就是在進行網絡請求了。
廢話不多說,直接拿一個網站做個解說,直接按以下步驟監(jiān)控網絡請求:
1. 示例:新浪滾動新聞,大家應該都知道開發(fā)者工具,即按下鍵盤F12 鍵瀏覽器打開的控制臺,這個東西非常強大,可以查看網頁內容,網絡請求,調試,Cookies,網頁源等等,不懂得自行百度,或者評論里留下你的問題,咱們一起探討。微信/App端后續(xù)介紹,需要輔助工具。
按F12打開開發(fā)者工具
2. 點擊NetWork,這里面可以看得到頁面上所有的請求,包括圖片/視頻/音頻/js/css等等,可選擇單獨過濾異步請求,js,css等
3. 確定頁面發(fā)生變化時,網絡請求發(fā)生了哪些變化,一般是點擊頁面上的按鈕或者刷新頁面來監(jiān)控網絡請求,對于本案例來說,點擊刷新按鈕,可看到發(fā)生了網絡請求,點擊可查看請求地址,請求頭信息和響應內容等信息。
查看請求詳細信息
至此,網絡請求我們就監(jiān)控完畢了,查看返回的響應信息,我沒讓你可以看到正是頁面上顯示的新聞列表。給大家推薦一個json校驗工具,"json.cn",方便易用。得到的json看如下效果。
json數(shù)據分析
三、分析數(shù)據,獲取你想要的內容
通過分析請求,不難發(fā)現(xiàn),我們要請求的地址是有參數(shù)的,其中最主要的參數(shù)是num和page,分別代表一頁顯示多少條數(shù)據,頁碼;通過改變page的值,我們就能抓取到第一頁到第N頁的數(shù)據了。
查看請求參數(shù)
我們抓取新聞,首先要得到新聞標題,時間,新聞鏈接這些基本信息,而上一步得到的json數(shù)據中,很容易得到這些數(shù)據,分別是url,title,ctime字段,至此我們的新聞請求地址基本信息是拿到了,下一章節(jié)將介紹如何得到新聞的主題內容。
四、總結一下
F12打開控制臺-->點擊NetWork-->點擊頁面上的按鈕-->查看請求內容和響應內容-->分析數(shù)據,得到你想要的。
編程并不難,只要你肯下功夫去鉆研,一切問題迎刃而解!
好了,今天的分享就到這,如果你對Python感興趣,歡迎加入我們【python學習交流裙】,免費領取學習資料和源碼。