手把手教你爬取優酷電影資訊 2

2021-10-20 07:56:50 字數 1753 閱讀 1700

部落格:

沉澱、分享、成長,讓自己和他人都能有所收穫!?

上一章節中我們實現了對優酷單頁面的爬取,簡單進行回顧一下,使用htmlagilitypack庫,對爬蟲的爬取一共分為三步

使用chrome瀏覽器,f12,找到當前位置,得到當前位置的xpath。我們需要的資料是電影的類別編碼和電影類別名稱。

規則分析:

xpath路徑為 「//*[@id=『filterpanel』]/div/ul/li/a」)

類別編碼為a標籤href路徑的內容,我們對其進行擷取

類別名稱為a標籤innertest,我們對其進行擷取

**示例

//載入web內容

private static readonly string _url = "";

/// /// 得到所有的類別

///

public static listgetvideotypes()

).tolist();

var relist = new list();

foreach (var node in typeresults));}

return relist;

}

code 為電影類別編碼

頁面規則 $「

根據頁面規則進行爬取:

/// ///     得到當前類別的總頁數

///

public static int getpagecountbycode(string code)

.html");

//分頁列表

var pagelist = doc.documentnode.cssselect(".yk-pages li").tolist();

//得到倒數第二項

var lastsecond = pagelist[pagelist.count - 2];

return convert.toint32(lastsecond.innertext);

}

根據分頁規則分析出分頁後的位址為

code 為編碼 pageindex為第幾頁

頁面規則:

根據頁面規則進行爬取:

/// ///     得到當前類別的內容

///

public static listgetcontentsbycode(string code, int pageindex)

_s_1_d_1_p_.html");

var returnli = new list();

var contents = doc.documentnode.cssselect(".yk-col4").tolist();

foreach (var node in contents)

returnli.add(new videocontent

);return returnli;

}

/// ///     列印得到的內容

///

public static void printcontent()

\t 頁數 \t 總個數");

count += resultli.count;

}console.writeline($"總個數為");

}

手把手教你爬取B站彈幕!

基本的思路很簡單,還是老步驟 1 構造爬取的url 2 解析返回的資料 3 使用json或xpath或正規表示式提取資料 4 儲存資料 剛開始還是從網頁版中尋找url位址,結果請求很多,找了半天也沒有找到 於是我們可以訪問一下手機版的頁面,而根據常識,彈幕這種東西一般是通過ajax來請求的,所以我們...

python 詞云手把手 手把手教你生成炫酷的詞云

前言 話說,在這個大資料時代,獲取資訊顯得極為容易,可正是如此,我們想要對資訊進行直觀地了解難度就大了。excel是乙個很好的資料視覺化方法,不過有時候我們的資料 可能並不是一張或者多張excel 這樣子的話如果我們想利用excel進行資料視覺化就顯得不是那麼容易。首先我們需要逐個將資料匯入到exc...

手把手教你 Spark 效能調優

上周四接到反饋,集群部分 spark 任務執行很慢,且經常出錯,引數改來改去怎麼都無法優化其效能和解決頻繁隨機報錯的問題。看了下任務的歷史運 況,平均時間 3h 左右,而且極其不穩定,偶爾還會報錯 任務的執行時間跟什麼有關?1 資料來源大小差異 2 本身邏輯缺陷 比如 裡重複建立 初始化變數 環境 ...