IMDBのメッセージをクロールday02

「」 ' 
IMDBのメッセージをクロール:
映画名、映画のURL、映画監督
映画スター、映画の年、ジャンル
映画音楽、映画、映画レビュー
'''
爬虫三部曲
インポート  要求が
 インポート
#1は、リクエストを送信します
デフget_page(URL):
    REPONSE = requests.get(URL)
     戻り REPONSE
#2。解析データ
デフparse_index(HTML):
    movie_list = re.findall(。?<DIV CLASS = "アイテム"> * <EMクラス= "">。?(*)</ EM> * <のhref =。? "(。 ?*) "?> * <スパンクラス="タイトル">(*)</ span>の*导演:。?。?(*)主演:。?(*)<BR>(*)。?。? </ P>。*?<スパンクラス= "rating_num"。*?>(。*?)</ span>を。*?<スパン>(。*?)人评价</ span>を。*?<スパンクラス= "INQ">(。*?)</ span>の" 
            HTML、
            re.S)
    リターン movie_list
#3セーブデータ
DEFのsave_data(動画):
    トップ、m_url、名前、daoyan、俳優、year_type、ポイント、トーク、DESC = 動画
    year_type = year_type.strip(' \ N- ' 
    データ = F '' ' 
              ======== ======= IMDBのへようこそ=============== 
                              映画ランキング:{トップ} 
                              動画のURL:{} m_url 
                              映画名:{名前} 
                              映画監督:{daoyan } 
                              映画主演:{}俳優
                              ジャンル:{} year_type 
                              映画の評価:{ポイント} 
                              映画:{DESC} 
                              映画のレビュー:{}の話
              =================歓迎は再び来る================== 
              \ N- 
              N- \ 
            「」 ' 
    印刷(データ)
    オープン(' douban_top250.text '' A '、エンコード= ' UTF-8。' F AS):
        f.write(データ)

    を印刷(F ' 映画:{name}が正常に書き込まれ... '
すべてのホームステッチ#
もし __name__ == ' __main__ ' 
    NUM = 0
     のためのライン範囲(10 ):
        URL = F ' https://movie.douban.com/top250?start={num}&filter= ' 
        NUM + = 25
         プリント(URL )
#1は、すべての家庭に要求を送信します
index_res = get_page(URL)
映画情報のための#2。解析のホーム・ページ
movie_list = parse_index(index_res.text)
#3セーブデータ
        以下のための映画movie_list:
            save_data(動画)

 

おすすめ

転載: www.cnblogs.com/changgeyimeng/p/11120471.html