Yado_tech

旅館+ITとはなんぞ

じゃらんの評価をスクレイピングしよう

じゃらんのサイトをスクレイピングしましょー 以下ソース

# -*- coding:utf-8 =*=
from urllib.request import urlopen
from bs4 import BeautifulSoup
import datetime
import csv

def jalanscrp(url):

    html = urlopen(url)
    bsObj = BeautifulSoup(html,"html.parser")

    yad_average = bsObj.findAll("span",{"class":"score-number"})            #宿平均
    yad_room = bsObj.findAll("dl",{"class":"room clearfix"})                #部屋
    yad_bath = bsObj.findAll("dl",{"class":"bath clearfix"})                #風呂
    yad_breakfast = bsObj.findAll("dl",{"class":"breakfast clearfix"})      #料理(朝食)
    yad_dinner = bsObj.findAll("dl",{"class":"dinner clearfix"})            #料理(夕食)
    yad_service = bsObj.findAll("dl",{"class":"service clearfix"})          #接客サービス
    yad_cleanliness = bsObj.findAll("dl",{"class":"cleanliness clearfix"})  #清潔感

    yad = []
#口コミ詳細
    yad.append(datetime.datetime.today())
    yad.append(yad_average[0].text[2:5])
    yad.append(yad_room[0].text[2:])
    yad.append(yad_bath[0].text[2:])
    yad.append(yad_breakfast[0].text[6:])
    yad.append(yad_dinner[0].text[6:])
    yad.append(yad_service[0].text[7:])
    yad.append(yad_cleanliness[0].text[3:])

    f = open('kuchikomi.csv',"a")
    writer = csv.writer(f)
    writer.writerow(yad)
    f.close()

jalanscrp("【宿のクチコミのある場所のURL】")

これをcronすればOK kuchikomi.csv内に宿の評価が自動的に組み入れられる。
javascriptとかでレンダリングされたページではないみたいなのでこれでもOK
 kuchikomi.csvの部分は絶対パスで指定することを忘れずに