def get(self): # 本来はこうやって取る #instr = self.request.get('question') instr = '{"Title":"この状況で何を切る??", "Detail":"起家で迎えた東一局、いきなり迷う配牌が来ました。¥n三色を狙いたいのですが、何を切れば良い?", "Bakyo":1, "Honba":1, "Cha":1, "Junme":16, "Tenbo":30000, "Tehai":[14,65,16,24,75,26,34,85,36,41,41,41,46], "Dora":[44], "Tsumo":47, "Author":"saito"}' in_question = simplejson.loads(instr) #for check parameter author = in_question['Author'] title = in_question['Title'] detail = in_question['Detail'] bakyo = in_question['Bakyo'] honba = in_question['Honba'] cha = in_question['Cha'] junme = in_question['Junme'] tenbo = in_question['Tenbo'] tehai = in_question['Tehai'] tsumo = in_question['Tsumo'] dora = in_question['Dora'] logging.debug(junme) logging.debug(tenbo) logging.debug(dora) # 問題を1件追加 question = Question() #question.no = int(self.request.get('no')) question.author = author question.title = title question.detail = detail question.bakyo = bakyo question.honba = honba question.cha = cha question.junme = junme question.tenbo = tenbo question.tehai = tehai question.tsumo = tsumo question.dora = dora question.put() # question = Question() # question.no = int(self.request.get('no')) # question.author = self.request.get('author') # question.situation = self.request.get('situation') # question.tehai = self.request.get('tehai') # question.tsumo = int(self.request.get('tsumo')) # question.dora = int(self.request.get('dora')) # question.put() # self.redirect('/') response_data = {} response_data['No'] = question.key().id() response_data['Date'] = str(question.date) # レスポンスデータ作成 resp = _ResponseFormat.create("PutQuestion", True, response_data) # レスポンス送信 send_response(self, resp)
def import_data(questions, categories, answers): categories_dict = {} num_lines = sum(1 for line in open(categories)) with open(categories, newline="") as csv_file: reader = csv.reader(csv_file) for row in tqdm(reader, desc="Reading categories", total=num_lines): id_ = int(row[0]) category = row[2] categories_dict[id_] = category if questions != "skip": num_lines = sum(1 for line in open(questions)) with open(questions, newline="") as csv_file: reader = csv.reader(csv_file) it = tqdm(reader, desc="Reading questions", total=num_lines) for i, row in enumerate(it): try: id_ = int(row[0]) category_id = int(row[3]) question = Question(meta={"id": id_}) question.date = row[1] question.category = categories_dict[category_id] question.title = row[4] question.body = "\n".join(row[5:]) question.save() except (IndexError, ValueError): continue if answers != "skip": with open(answers, newline="") as csv_file: reader = csv.reader(csv_file) it = tqdm(reader, desc="Reading answers") for i, row in enumerate(it): try: question_id = int(row[3]) question = Question.get(id=question_id) if question.answers is None: question.answers = row[4] else: question.answers += "\n\n" + row[4] question.save() except (IndexError, ValueError, NotFoundError): continue
def process_question_items(content): """ Process response and generate dictionary with questions and URL :param content: :return: """ questions = list() if "items" in content: items = content["items"] for item in items: question = Question() question.id = item['question_id'] question.title = item['title'] question.link = item['link'] question.tags = item['tags'] question.is_answered = item['is_answered'] question.answer_count = item['answer_count'] questions.append(question) return questions