Esempio n. 1
0
def handle(data, cache=None, app=None):
    if app is None:
        ak = '18691b8e4206238f331ad2e1ca88357e'
    else:
        ak = app.config.get('BAIDU_AK')
    message = data['message']
    location = get_city(data)
    if location:
        message = message.replace(location.encode('utf-8'), '')
    days = get_desc(DAYS_REGEX, message)
    if days:
        if not isinstance(days, int):
            days = chinese2digit(days)
        res = travel_city(ak, location, days)
        return get_itinerary(res), None
    city = get_desc(CITY_REGEX, message)
    if city:
        res = travel_city(ak, location)
        return get_itinerary(res, details=True), None
    attractions = get_desc(ATTRACTIONS_REGEX, message)
    if attractions:
        return travel_attractions(ak, to_pinyin(attractions)), None
    return '没找到对应的旅游行程', None
Esempio n. 2
0
def upload():
    file_data = upload_file(request)
    ext = os.path.splitext(file_data[2])[1]
    url = file_data[1]
    if ext is 'jpg':
        lat, lon = image_data.get_lat_lon(
            image_data.get_exif_data(file_data[0]))
    else:
        lat = None
        lon = None

    try:
        concepts = clarifai_data.get_concepts(url)
    except:
        return "The Clarifai API returned an unconventional response. Please hit back and try again!"

    emotions, objects = image_request.response(image_request.cloud_vision(url))
    emotion_data = image_request.black_magic(emotions)

    phrases = removeDuplicates(concepts, objects)

    if lat is not None and lon is not None:
        weather_raw = weather.get_weather(weather.get_city(lat, lon))
        weather_data = weather.black_magic(weather_raw, emotion_data[0])
    else:
        weather_raw = weather.get_weather("State College")
        weather_data = weather.black_magic(weather_raw, emotion_data[0])
    print(phrases, emotion_data, weather_data)
    # print(test_generator.generate_haiku(phrases, emotion_data, weather_data))
    # return test_generator.generate_haiku(phrases, emotion_data, weather_data)
    # print(super_generator.main_shit(phrases, weather_data))
    first_line, second_line, third_line = super_generator.main_shit(
        phrases, weather_data)
    return render_template('result.html',
                           first_line=first_line,
                           second_line=second_line,
                           third_line=third_line)
Esempio n. 3
0
def handle(data):
    app = current_app
    if app is None:
        ak = '18691b8e4206238f331ad2e1ca88357e'
    else:
        ak = app.config.get('BAIDU_AK')
    message = data['message']
    location = get_city(data)
    if location:
        message = message.replace(location.encode('utf-8'), '')
    days = get_desc(DAYS_REGEX, message)
    if days:
        if not isinstance(days, int):
            days = chinese2digit(days)
        res = travel_city(ak, location, days)
        return get_itinerary(res), None
    city = get_desc(CITY_REGEX, message)
    if city:
        res = travel_city(ak, location)
        return get_itinerary(res, details=True), None
    attractions = get_desc(ATTRACTIONS_REGEX, message)
    if attractions:
        return travel_attractions(ak, to_pinyin(attractions)), None
    return '没找到对应的旅游行程', None
Esempio n. 4
0
def handle(data):
    app = current_app
    if app is None:
        ak = "18691b8e4206238f331ad2e1ca88357e"
    else:
        ak = app.config.get("BAIDU_AK")
    message = data["message"]
    location = get_city(data)
    if location:
        message = message.replace(location.encode("utf-8"), "")
    days = get_desc(DAYS_REGEX, message)
    if days:
        if not isinstance(days, int):
            days = chinese2digit(days)
        res = travel_city(ak, location, days)
        return get_itinerary(res), None
    city = get_desc(CITY_REGEX, message)
    if city:
        res = travel_city(ak, location)
        return get_itinerary(res, details=True), None
    attractions = get_desc(ATTRACTIONS_REGEX, message)
    if attractions:
        return travel_attractions(ak, to_pinyin(attractions)), None
    return "没找到对应的旅游行程", None
Esempio n. 5
0
def test(data):
    return get_city(data) and any([
        regex.search(data['message']) for regex in [CITY_REGEX, DAYS_REGEX]]) \
        or ATTRACTIONS_REGEX.search(data['message'])
Esempio n. 6
0
def test(data):
    return get_city(data) and any([
        regex.search(data['message']) for regex in [CITY_REGEX, DAYS_REGEX]]) \
        or ATTRACTIONS_REGEX.search(data['message'])