# Ordering similarity def calc_ordering_sim(ordering1, ordering2, matrix): return similarity(ordering1, ordering2, matrix) # Cuisine similarity def calc_cuisine_sim(cuisine1, cuisine2, matrix): return similarity(cuisine1, cuisine2, matrix) if __name__ == '__main__': # 直接執行r2R.py的時候,輸出餐廳相似矩陣的csv from db import DBConn conn = DBConn() conn.open() restaurants_num = conn.getRestaurantsNum() order_sim_matrix = conn.getOrderingSimMatrix() cuisine_sim_matrix = conn.getCuisineSimMatrix() num = len(restaurants_num) similarities = [] for i, restaurant1 in enumerate(restaurants_num): for j in range(i, num): restaurant2 = restaurants_num[j] sim = calc_r2r(restaurant1, restaurant2, conn.getRestaurantDistance(restaurant1['rid'], restaurant2['rid']), order_sim_matrix, cuisine_sim_matrix) if restaurant1['rid'] != restaurant2['rid'] else 1 similarities.append((restaurant1['rid'], restaurant2['rid'], sim)) conn.close()
output_filepath = output_dir + '/wp_posts/wp_links.json' with codecs.open(output_filepath, 'w+', 'utf-8') as f: f.write(json.dumps(wp_links, default=helpers.json_serial, indent=4)) output_filepath = output_dir + '/all_image_urls.json' with codecs.open(output_filepath, 'w+', 'utf-8') as f: f.write( json.dumps(all_image_urls, default=helpers.json_serial, indent=4)) ## dump s3_images links """ d.info('dump s3 image links ...') s3_image_links = get_all_s3_images_url(cursor) d.info('total count: {}'.format(len(s3_image_links))) s3_image_results = {} for s3_image_link in s3_image_links: cdn_wp_online_links = phpserialize.loads(s3_image_link['meta_value'])['cdn-wp-online'] post_id = s3_image_link['post_id'] s3_image_results[post_id] = cdn_wp_online_links output_filepath = output_dir + '/s3_images/s3_images.json' with codecs.open(output_filepath, 'w+', 'utf-8') as f: f.write(json.dumps(s3_image_results, default=helpers.json_serial, indent=4)) d.info('[OK] => {}\n'.format(output_filepath)) """ db_conn.close()