[TIL]bs 4の使用


📚TL;DR


httprequst リクエストライブラリとして
  • BeautifulSoup解析html
  • を使用
  • csv形式で
  • を保存

    1. crawling.py

    from bs4 import BeautifulSoup
    from urllib.request import urlopen
    import csv
    import re
    import requests
    
    # 1. open csv file
    csv_file_name_to_write = "fashion_all.csv"
    csv_open = open(csv_file_name_to_write, 'w+', encoding='utf8')
    csv_writer = csv.writer(csv_open)
    csv_writer.writerow(('title', 'image_url'))
    
    # 2. BeautifulSoup
    crawling_url = 'http://www.vogue.co.kr/category/fashion/'
    req = requests.get(crawling_url)
    html = req.text
    bs = BeautifulSoup(html, 'html.parser')
    
    article_list = bs.findAll('article', {'id': re.compile('post-*')})
    for article in article_list:
        # article's title
        h2_title = article.findAll('h2')
        title = h2_title[0].text
        title = " ".join(title.split())
    
        # image url
        img = article.find('img')
        image_url = img['src']
    
        csv_writer.writerow((title, image_url))
    
    
    csv_open.close()

    2. fashion_all.csv



    CSVとは?


    カンマseparted値の略語.情報のデータ/テキストファイルをカンマで区切ります.互換性のないフォーマットを使用したプログラム間でデータを転送するための簡単なファイルフォーマット

    はい。


    テーマ連載先タイプThe Box Naverネット漫画スポーツ簿記映画Kaka Page映画評論教授人形ホラー映画
    제목,연재처,장르
    더복서,네이버웹툰,스포츠
    부기영화,카카오페이지,영화리뷰
    교수인형,다음,스릴러