# -*- coding: utf-8 -*-

# Define here the models for your scraped items
#
# See documentation in:
# http://doc.scrapy.org/en/latest/topics/items.html

import scrapy


class ListPriceHotelsItem(scrapy.Item):
    name = scrapy.Field()
    url = scrapy.Field()
    time_borrow = scrapy.Field()
    company = scrapy.Field()
    price = scrapy.Field()

class ListTripadvisorHotelsItem(scrapy.Item):
    id = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    url = scrapy.Field()
    review_count = scrapy.Field()
    street_address = scrapy.Field()
    extended_address = scrapy.Field()
    locality_address = scrapy.Field()
    postal_code = scrapy.Field()
    score = scrapy.Field()
    stars = scrapy.Field()
    island = scrapy.Field()
    excelent = scrapy.Field()
    very_good = scrapy.Field()
    average = scrapy.Field()
    poor = scrapy.Field()
    terrible = scrapy.Field()
    price_range = scrapy.Field()
    lng = scrapy.Field()
    lat = scrapy.Field()
    cleanliness = scrapy.Field()
    location = scrapy.Field()
    service = scrapy.Field()
    value =  scrapy.Field()
    place_searched = scrapy.Field()

class ListTripadvisorHomesItem(scrapy.Item):
    id = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    url = scrapy.Field()
    review_count = scrapy.Field()
    lng = scrapy.Field()
    lat = scrapy.Field()
    price = scrapy.Field()
    rooms = scrapy.Field()
    bathrooms = scrapy.Field()
    n_people = scrapy.Field()
    min_stay = scrapy.Field()
    type_residence = scrapy.Field()
    score = scrapy.Field()
    place = scrapy.Field()
    place_searched = scrapy.Field()

class ListRestaurantsTripadvisorItem(scrapy.Item):
    id = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    url = scrapy.Field()
    review_count = scrapy.Field()
    street_address = scrapy.Field()
    extended_address = scrapy.Field()
    locality_address = scrapy.Field()
    postal_code = scrapy.Field()
    score = scrapy.Field()
    service = scrapy.Field()
    food = scrapy.Field()
    value = scrapy.Field()
    atmosphere = scrapy.Field()
    island = scrapy.Field()
    excelent = scrapy.Field()
    very_good = scrapy.Field()
    average = scrapy.Field()
    poor = scrapy.Field()
    terrible = scrapy.Field()
    price_range = scrapy.Field()
    lng = scrapy.Field()
    lat = scrapy.Field()
    place_searched = scrapy.Field()

class ListBookingHomeItem(scrapy.Item):
    id = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    url = scrapy.Field()
    type_residence = scrapy.Field()
    address = scrapy.Field()
    region = scrapy.Field()
    postal_code = scrapy.Field()
    score = scrapy.Field()
    stars = scrapy.Field()
    cleanliness_rating = scrapy.Field()
    comfort_rating = scrapy.Field()
    facilities_rating = scrapy.Field()
    staff_rating = scrapy.Field()
    value_for_money_rating = scrapy.Field()
    wifi_rating = scrapy.Field()
    location_rating = scrapy.Field()
    review_count = scrapy.Field()
    type_establishment = scrapy.Field()
    price_min = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    place_searched = scrapy.Field()
    place = scrapy.Field()

class TripAdvisorReviewItem(scrapy.Item):
    # comento los campos que no se usan para que no salgan en el CSV
    # los que si se usan se describen después como se extraen en el
    # tripadvisor_spyder.py
    hotel_name = scrapy.Field()
    hotel_street_address = scrapy.Field()
    hotel_extended_address = scrapy.Field()
    hotel_locality_address = scrapy.Field()
    hotel_score = scrapy.Field()
    title = scrapy.Field()
    content = scrapy.Field()
    review_stars = scrapy.Field()
    review_date = scrapy.Field() #se anade para poder sacar la fecha del review
    #review_date2 = scrapy.Field() #se anade para poder sacar la fecha del review
    #reviewer_id = scrapy.Field()
    #reviewer_name = scrapy.Field()
    #reviewer_level = scrapy.Field()
    reviewer_location = scrapy.Field()




class BookingReviewItem(scrapy.Item):
    title = scrapy.Field()
    score = scrapy.Field()
    positive_content = scrapy.Field()
    negative_content = scrapy.Field()
    #comento las tags no la usamos en el proyecto
    #tags = scrapy.Field()
    review_date =scrapy.Field() # anadido para sacar la fecha del review
    reviewer_location = scrapy.Field() # anadido para sar la localizacion
    hotel_name = scrapy.Field()
    hotel_address = scrapy.Field()
    hotel_score = scrapy.Field()
    
class AirbnbReviewItem(scrapy.Item):
    content = scrapy.Field()
    review_date =scrapy.Field() # anadido para sacar la fecha del review




#Holiday Rent
class List9FlatHomeItem(scrapy.Item):
    id = scrapy.Field()
    url = scrapy.Field()
    title = scrapy.Field()
    price = scrapy.Field()
    type_residence = scrapy.Field()
    numberReviews = scrapy.Field()
    stars = scrapy.Field()
    web = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    place_searched = scrapy.Field()
    place = scrapy.Field()

class ListAirbnbHomeItem(scrapy.Item):
    name = scrapy.Field()
    url = scrapy.Field()
    id = scrapy.Field()
    price = scrapy.Field()
    lng = scrapy.Field()
    lat = scrapy.Field()
    description = scrapy.Field()
    type_residence = scrapy.Field()
    capacity = scrapy.Field()
    bathrooms = scrapy.Field()
    beds = scrapy.Field()
    rooms = scrapy.Field()
    type = scrapy.Field()
    min_stay = scrapy.Field()
    place_searched = scrapy.Field()
    place = scrapy.Field()

class ListAtraveoHomeItem(scrapy.Item):
    id = scrapy.Field()
    url = scrapy.Field()
    title = scrapy.Field()
    price = scrapy.Field()
    rooms = scrapy.Field()
    bathrooms = scrapy.Field()
    capacity = scrapy.Field()
    place = scrapy.Field()
    type_residence = scrapy.Field()
    number_reviews = scrapy.Field()
    main_bubbles = scrapy.Field()
    min_stay = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    m2 = scrapy.Field()
    description = scrapy.Field()
    place_searched = scrapy.Field()

class ListHometogoHomeItem(scrapy.Item):
    id = scrapy.Field()
    url_web = scrapy.Field()
    url_details = scrapy.Field()
    price = scrapy.Field()
    web = scrapy.Field()
    type_residence = scrapy.Field()
    number_reviews = scrapy.Field()
    main_bubbles = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    place_searched = scrapy.Field()
    place = scrapy.Field()

class ListHomewayHomeItem(scrapy.Item):
    id = scrapy.Field()
    url = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    price = scrapy.Field()
    rooms = scrapy.Field()
    bathrooms = scrapy.Field()
    toilets = scrapy.Field()
    capacity = scrapy.Field()
    place = scrapy.Field()
    type_residence = scrapy.Field()
    number_reviews = scrapy.Field()
    main_bubbles = scrapy.Field()
    min_stay = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    m2 = scrapy.Field()
    tourist_license = scrapy.Field()
    place_searched = scrapy.Field()

class ListNiumbaHomeItem(scrapy.Item):
    id = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    url = scrapy.Field()
    price = scrapy.Field()
    capacity = scrapy.Field()
    bathrooms = scrapy.Field()
    type_residence = scrapy.Field()
    rooms = scrapy.Field()
    min_stay = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    number_reviews_tripadvisor = scrapy.Field()
    main_bubbles_tripadvisor = scrapy.Field()
    tourist_license = scrapy.Field()
    response_rate = scrapy.Field()
    years_advertising = scrapy.Field()
    last_update = scrapy.Field()
    average_response_time = scrapy.Field()
    place_searched = scrapy.Field()
    place = scrapy.Field()

class ListFlipkeyHomeItem(scrapy.Item):
    id = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    url = scrapy.Field()
    price = scrapy.Field()
    capacity = scrapy.Field()
    bathrooms = scrapy.Field()
    type_residence = scrapy.Field()
    rooms = scrapy.Field()
    min_stay = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    number_reviews_tripadvisor = scrapy.Field()
    main_bubbles_tripadvisor = scrapy.Field()
    tourist_license = scrapy.Field()
    response_rate = scrapy.Field()
    years_advertising = scrapy.Field()
    last_update = scrapy.Field()
    average_response_time = scrapy.Field()
    place_searched = scrapy.Field()
    place = scrapy.Field()

class ListHousetripHomeItem(scrapy.Item):
    id = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    url = scrapy.Field()
    price = scrapy.Field()
    capacity = scrapy.Field()
    bathrooms = scrapy.Field()
    type_residence = scrapy.Field()
    rooms = scrapy.Field()
    min_stay = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    number_reviews_tripadvisor = scrapy.Field()
    main_bubbles_tripadvisor = scrapy.Field()
    tourist_license = scrapy.Field()
    response_rate = scrapy.Field()
    years_advertising = scrapy.Field()
    last_update = scrapy.Field()
    average_response_time = scrapy.Field()
    place_searched = scrapy.Field()
    place = scrapy.Field()

class ListHolidaylettingsHomeItem(scrapy.Item):
    id = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    url = scrapy.Field()
    price = scrapy.Field()
    capacity = scrapy.Field()
    bathrooms = scrapy.Field()
    type_residence = scrapy.Field()
    rooms = scrapy.Field()
    min_stay = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    number_reviews_tripadvisor = scrapy.Field()
    main_bubbles_tripadvisor = scrapy.Field()
    tourist_license = scrapy.Field()
    response_rate = scrapy.Field()
    years_advertising = scrapy.Field()
    last_update = scrapy.Field()
    average_response_time = scrapy.Field()
    place_searched = scrapy.Field()
    place = scrapy.Field()

class ListOnlyApartmentsHomeItem(scrapy.Item):
    id = scrapy.Field()
    title = scrapy.Field()
    description = scrapy.Field()
    url = scrapy.Field()
    price = scrapy.Field()
    lng = scrapy.Field()
    lat = scrapy.Field()
    type_residence = scrapy.Field()
    place = scrapy.Field()
    street = scrapy.Field()
    min_stay = scrapy.Field()
    number_reviews = scrapy.Field()
    main_bubbles = scrapy.Field()
    number_reviews_tripadvisor = scrapy.Field()
    main_bubbles_tripadvisor = scrapy.Field()
    place_searched = scrapy.Field()

class ListRentaliaHomeItem(scrapy.Item):
    id = scrapy.Field()
    url = scrapy.Field()
    title = scrapy.Field()
    price = scrapy.Field()
    rooms = scrapy.Field()
    bathrooms = scrapy.Field()
    beds = scrapy.Field()
    capacity = scrapy.Field()
    place = scrapy.Field()
    type_residence = scrapy.Field()
    number_reviews = scrapy.Field()
    main_bubbles = scrapy.Field()
    min_stay = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    place_searched = scrapy.Field()

class ListCasamundoHomeItem(scrapy.Item):
    id = scrapy.Field()
    url = scrapy.Field()
    title = scrapy.Field()
    price = scrapy.Field()
    bathrooms = scrapy.Field()
    beds = scrapy.Field()
    capacity = scrapy.Field()
    m2 = scrapy.Field()
    type_residence = scrapy.Field()
    number_reviews = scrapy.Field()
    main_bubbles = scrapy.Field()
    equipment_rating = scrapy.Field()
    location_rating = scrapy.Field()
    general_impression_rating = scrapy.Field()
    value_rating = scrapy.Field()
    cleanliness_rating = scrapy.Field()
    kindness_services_rating = scrapy.Field()
    lat = scrapy.Field()
    lng = scrapy.Field()
    place = scrapy.Field()
    place_searched = scrapy.Field()
