部落格:
沉澱、分享、成長,讓自己和他人都能有所收穫!?
上一章節中我們實現了對優酷單頁面的爬取,簡單進行回顧一下,使用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 本身邏輯缺陷 比如 裡重複建立 初始化變數 環境 ...