一、環境
開發環境:
Microsoft Visual Studio Professional 2022 (2) (64 位) - Current
版本 17.7.7
.net core 6.0
AngleSharp 1.1.2
AngleSharp.Js 0.15.0
Downloder 3.0.6
Magicodes.IE.Excel 2.7.5.1
二、添加winform項目
三、添加html操作類
四、添加http請求幫助類
五、爬取過程分析
1.爬取地址https://shop42170439.m.youzan.com/v2/showcase/feature?alias=dHoXxBva8r
2.首先確定一下我們的需求,我們按分類來爬取分類下的商品信息,然後按分類存儲文件,一個分類存儲一個文件。
那麼我們先要爬取分類的數據。
按下F12,打開搜索,搜索發現搜不到
換成搜圖片,發現在頁面上就已經寫好了
我們查下頁面的源碼ctrl+u,在腳本里面,應該是有贊模版生成的json串。
剩下的就是怎麼把這個json串分解,拿到我們需要的分類信息。
我這裏代碼比較暴力,大家自行改造,主要還是html的操作
這裏面我們可以拿到kdt_id和分類名還有分類的別名代碼。
2.接着我們來看分類裏面的商品。同樣的隨便找一個商品名,看下他是怎麼加載的
我們可以知道商品的數據是接口返回的。我們在網絡裏面找到請求的接口
既然是接口返回的,那麼好辦,我們就直接後臺調用接口就可以拿到商品數據了,這裏面就需要上一步拿到的分類信息,主要是分類別名代碼和kdt_id。
六、最後拿到的數據通過magicodes.IE.Excel下載。
這裏使用了Masuit.Tools.Excel的ToExcel()方法拿Stream後使用Magicodes.IE.Excel下載。可能有點繞,大家自行優化。
七、源代碼
鏈接:https://pan.baidu.com/s/1isjg1M6trHkzjH6bMyssoA?pwd=gw0k
提取碼:gw0k