犬は、書き込みCSVファイルをリストに急騰したクール
犬の音楽がトップ10曲、アーティスト、時間のリストをクロール高騰クール、Webコンテンツをクロールの良い例であり、爬虫類は、クローラは、この例に基づいてWebコンテンツをクロールする方法に精通している読者に精通していません。
ライブラリを使用する必要があります。要求ライブラリ、BeautifulSoupライブラリ、時間のライブラリを、
请求头:'ユーザーエージェント': 'のMozilla / 5.0(Windows NTの6.1; WOW64)のAppleWebKit / 537.36(KHTML、ヤモリなど)クローム/ 56.0.2924.87サファリ/ 537.36'
URL:https://www.kugou.com/yy/rank/home/1-6666.html?from=rank
完全なコードを実行します。
1つの インポート要求 2 から BS4のインポートBeautifulSoup 3 インポート時間 4 5 #请求头 6つのヘッダー= { 7 ' のUser-Agent ':' のMozilla / 5.0(のWindows NT 6.1; WOW64)のAppleWebKit / 537.36(KHTML、ヤモリ等)クローム/ 56.0 .2924.87サファリ/ 537.36 ' 8 } 9 10 デフrequests_list(URL): 11 wb_data = requests.get(URL、ヘッダー= ヘッダ) 12 スープ= BeautifulSoup(wb_data.text、' lxmlの' ) 13は = soup.select(NUMS ' span.pc_temp_num ')#1 ランク 14 タイトルsoup.select =(' div.pc_temp_songlist> UL> LI> A ')#1 タイトル 15 時間= soup.select(' span.pc_temp_tips_r>スパン')#1 曲の時間は、 16 位便利nが高騰曲の唯一トップ10リストを取るかどうかを決定する定義 。17 、N = 0 18は #空の辞書に登るために、各サイクルをとっデータ 19件の データ= [] 20である データ.append([ ' NUM '、' 歌手'、' 歌'、' 時間' ]) 21 のための NUM、タイトル、時間内のzip(NUMS、タイトル、時間): 22 data.append([ 23 num.get_text()。ストリップ()、 24 タイトル。 GET_TEXT()スプリット(' - ')[0]、 #用" - "分割歌手和歌名 25 。title.get_text()スプリット(' - ')[1 ]、 26 。time.get_text()ストリップ( ) 27 ]) 28 N = N + 1 29 IF N-> = 10 : 30 BREAK 31は プリント(データ) 32 リターンデータ 33は 34である DEF save_to_csv(データ): 35 #オープンkugou.csvファイルは、データがクロールに書き込まれる 36 FRを=開き(" kugou.csv " " W " ) 37 のための S にデータ: 38である fr.write(" 、" .join(S)+ " \ N- " ) 39 40 IF __name__ == '__main__ ' : 41件 のURL = " https://www.kugou.com/yy/rank/home/1-6666.html?from=rank " 42 save_to_csv(requests_list(URLの))
注:クロールプロセスは、問題がある場合は、あなたが以下のコメントをブログすることができ、小さなシリーズはああ答えます