Beispiel #1
0
def travel_attractions(ak, id):
    '''景点详情'''
    id = to_pinyin(id)
    res = requests.get(TRAVEL_ATTRACTIONS_API, params={
        'id': id, 'ak': ak, 'output': 'json'})
    data = res.json()
    if data['error']:
        return '找不到这个景点'
    data = res.json()['result']
    return '\n'.join([
        data['description'],
        u'票价: ' + data['ticket_info']['price'],
        u'开放时间: ' + data['ticket_info']['open_time']
    ])
Beispiel #2
0
def handle(data):
    message = data["message"]
    if not isinstance(message, unicode):
        message = message.decode("utf-8")
    msg = message.split()
    if len(msg) == 1 or (len(msg) == 2 and u"私聊" in msg[1]):
        city = "beijing"
    else:
        city = to_pinyin(msg[1])
    if u"将" in message:
        fn = get_later_movie_info
    else:
        fn = get_current_movie_info
    ret = [r for r in fn(city, app)]
    return "\n".join([r[0] for r in ret]), [r[1] for r in ret]
Beispiel #3
0
def handle(data, app, **kwargs):
    message = data['message']
    if not isinstance(message, unicode):
        message = message.decode('utf-8')
    msg = message.split()
    if len(msg) == 1 or (len(msg) == 2 and u'私聊' in msg[1]):
        city = 'beijing'
    else:
        city = to_pinyin(msg[1])
    if u'将' in message:
        fn = get_later_movie_info
    else:
        fn = get_current_movie_info
    ret = [r for r in fn(city, app)]
    return '\n'.join([r[0] for r in ret]), [r[1] for r in ret]
Beispiel #4
0
def handle(data):
    message = data['message']
    if not isinstance(message, unicode):
        message = message.decode('utf-8')
    msg = message.split()
    if len(msg) == 1 or (len(msg) == 2 and u'私聊' in msg[1]):
        city = 'beijing'
    else:
        city = to_pinyin(msg[1])
    if u'将' in message:
        fn = get_later_movie_info
    else:
        fn = get_current_movie_info
    ret = [r for r in fn(city, app)]
    return '\n'.join([r[0] for r in ret]), [r[1] for r in ret]
Beispiel #5
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
Beispiel #6
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
Beispiel #7
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