小さなプログラムを書くためのpythonを使用して、自分の知識を適用するために、学校で、最近Pythonは、小説、以下のコードの静的なページを取得するために使用されます。
1 インポートurllib.request 2 インポートOS 。3 。4つのヘッダー= { 5。 " User--エージェント":" はMozilla / 5.0(のWindows NT 6.1; WOW64)のAppleWebKit / 535.1(KHTML、ヤモリ等)クローム/ 14.0.835.163 " 。6 」サファリ/ 535.1 」、 7 } 8。 9。 10 #メインルーチン、各章の名称及び取得したリンク 11。 DEF メイン(): 12である プリント(' ダウンロードを開始する' ) 13は URL_LIST = [] 14 URL =' http://www.eywedu.com/honglou/01/index.htm ' 15 RES = urllib.request.Request(URL、データ=なし、ヘッダー= ヘッダ) 16 HTML = urllib.request.urlopen(RES)。読み取り()デコード(' GB18030 ' ) 17の リスト= html.split(' <A HREF =」' ) 18の ための I にリスト: 19 あれば ' 第' におけるI: 20 、S = i.split(R ' </ A> <BR> ") #/ AT文字切り出しのためのBR 21は、 S1 = ' ' .Join(S [0] .split()) #は、余分なスペースキャンセル 22は url_list.append(S1) 23である handle_url(URL_LIST) 24 25 26である #正確なリンクを得るために、取得したリンクを処理し、各章の名前 27 DEFのhandle_url(URLを): 28 IF ていない os.path.exists(' 赤の夢' ): 29 os.makdirs(' 赤の夢' ) 30 NET = ' http://www.eywedu.com/honglou/01/ ' 31である ページ1 = 32 のため I 中のURL: 33です = i.splitカット(' 「> ' ) 34である GET_CONTENT(NET +切り取り[0]、切り取り[1 ]) 35 プリント(' 第一'ページ、' キャップが下完了' ) 36 ページ+ = 1ページ 37 38のIS 39 #は、各章リンクにかかるコンテンツ取得 40 DEFのGET_CONTENT(URL、名): 41である、 段落= [] 42であり、 RES = urllib.request.Request(URL、データ=なし、ヘッダー= ヘッダ) 43である HTMLはurllib.request.urlopen(= RES)が.read()。デコード(' GB18030 ') 44の リスト= html.split(' <BR> ' ) 45 、T = 0 46 ながら T < LEN(リスト): 47 であれば、T == 0: 48 、P =リスト[T] .split(R ' 2014newad.js」 > </ SCRIPT> </ DIV> ')[1 ] 49 、P = p.replace(' \ R \ n '、'' ) 50 paragraphs.append(P) 51 のelif T == LEN(リスト) - 1 : 52 、P =リスト[T] .split(R '<! - / HTMLBUILERPART0 - > ' )[0] 53 、P = p.replace(' \ R \ n '、'' ) 54 paragraphs.append(P) 55 他: 56 P =リスト[T] .replace (' \ R \ n '、'' ) 57 paragraphs.append(P) 58 、T = T + 1 59 save_txt(段落番号、名前) 60 61 62 #将得到的信息保存 63 DEF save_txt(コンテンツ名): 64 F =オープン("红楼梦\\ ' +名+ ' の.txt ' " "、コード= ' UTF-8 ' ) 65 のための I における含有量: 66 f.write(I) 67 f.close() 68 69 70 なら__name__ == ' __main__ ' : 71 メイン()
:正常にダウンロードを実行することができ