キャッツアイチャートをクロールについてオンラインチュートリアルはその悪い通りと言うことができるので、それらの前任者は、私は再びマニュアル叫びに、あなたのステップのピットに入れ、ピット段感謝します
これが私の考えです。
正規表現の解析ページ - - Url--は、ソースコードを取得するためにWebページをクロールTXTファイルが書き込まれます
-------------------------------------------------- -------------------------------------------------- -------------------------
ページのURLを取得し、私が言うことはありませんでした
デフget_page_url(N): URL =(' https://maoyan.com/board/4?offset= ' + STR(N)+ ' 0 ' ) の戻り URL
ページのソースをクロール
デフget_one_page(URL): ページ = requests.get(URL) 戻り page.text
定期的な分析のウェブサイトのソースコードを、ここではピットを踏んで、正規表現は実行エラーが生じ、re.compileを追加することを忘れ
デフparse_page(ページ): パターン = re.compile(" 。?。<DD> *ボード・インデックス*>(*)</ I> *データ-SRC =(*)ALT =?。?。?。?。 *?データ-行為。*?>(。*?)</a>の。*?クラス= "スター"。*?>(。*?)</ P>。*?releasetime ">(。*?) </ P>。*?整数。*?>(。*?)</ I>。*?画分。*?>(。*?)</ I> ' 、re.S) ページング = re.findall(パターン、ページ) のための項目でページング: プリント(アイテム) リターンページング
ファイルへの書き込み、足のピットは再び、このインポートは、それが書き込み専用のopen()である通常の状況下では、OSのモジュールは、os.open使用し、エラーにつながっているました
DEF :(ページング)write_to_txt ページング = STR(ページング) maoyan(=オープン' 猫眼电影排行榜の.txt '、' A ' ) maoyan.write(ページング) maoyan.write(' \ nは' ) )(maoyan.close
すべてのコード
インポート要求が インポート再 #首页URL = 'HTTPSを:?//maoyan.com/board/4オフセット= 0' DEF get_page_url(N): URL =(' https://maoyan.com/board/4?offset= ' STR(N)+ ' 0 ' ) の戻りのURL デフget_one_page(URL)を: ページ = requests.get(URL) 戻りpage.textの デフparse_page(ページ): パターン = re.compile('<DD>。*?ボード・インデックス。*?>(。*?)</ I>。*?データ-SRC =(。*?)ALT =。*?データ-行為。*?>(。*? )</a>の。*?クラス= "スター"。*?>(。*?)</ P>。*?releasetime ">(。*?)</ P>。*?整数。*?>( 。*)</ I> *小数*>(*)</ I>?。?。?。?" 、re.S) ページング = re.findall(パターン、ページ) のための項目でページング: プリント(アイテム) リターンページング DEF :(ページング)write_to_txt ページング = STR(ページング) maoyan =オープン(' 猫眼电影排行榜の.txt '、' A ' ) maoyan.write(ページング) maoyan。書き込み( ' \ nを') maoyan.close() デフ(メイン): 用 I における範囲(0,10 ): URL = get_page_url(I) ページ = get_one_page(URL) writed = parse_page(ページ) write_to_txt(writed) の主()
完了するピット、行に個別に配置要素それぞれのリストは、今そこに行のリストを入れて、エクセルの分析を記述しています