커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
웹개발 종합반 4주차 DB에 데이터 넣는데 생기는 오류에 대한 설명 요청
undefined주차
북마크
양*연
댓글
3
추천
0
조회수
11
조회수
11
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


    ogtitle = soup.select_one('meta[property="og:title"]')['content']

    ogdescription = soup.select_one('meta[property="og:description"]')['content']

    ogimage = soup.select_one('meta[property="og:image"]')['content']

는 에러를 출력하지 않는데,

    ogtitle = soup.select_one('meta[property="og:title"]')

    ogdescription = soup.select_one('meta[property="og:description"]')

    ogimage = soup.select_one('meta[property="og:image"]')


는 왜 에러를 출력하나요?


사실 ['content']가 없으면 "보스 베이비 2"라고 출력할 것을 <meta content="보스 베이비 2" property="og:title"/>로 출력할 것인데 그냥 <meta content="보스 베이비 2" property="og:title"/>이 DB에 들어가면 되지 않나요?

혹시, "보스 베이비2"는 text라서 VARCHAR에 들어갈 수 있고, <meta content="보스 베이비 2" property="og:title"/>는 html 값이라서 VARCHAR 자료형에 들어갈 수 없나요?



스파르타 즉문즉답스파르타 즉문즉답





작성한 코드 및 에러 메세지

    ogtitle = soup.select_one('meta[property="og:title"]')

    ogdescription = soup.select_one('meta[property="og:description"]')

    ogimage = soup.select_one('meta[property="og:image"]')

라고 쓰면 app.py에서 아래와 같은 에러 메시지를 출력합니다.


127.0.0.1 - - [12/Feb/2023 00:54:43] "POST /movie HTTP/1.1" 500 -

Traceback (most recent call last):

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\flask\app.py", line 2548, in __call__

  return self.wsgi_app(environ, start_response)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\flask\app.py", line 2528, in wsgi_app

  response = self.handle_exception(e)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\flask\app.py", line 2525, in wsgi_app

  response = self.full_dispatch_request()

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\flask\app.py", line 1822, in full_dispatch_request

  rv = self.handle_user_exception(e)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\flask\app.py", line 1820, in full_dispatch_request

  rv = self.dispatch_request()

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\flask\app.py", line 1796, in dispatch_request

  return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)

 File "c:\Users\Dodo\Desktop\sparta\projects\03.pedia\app.py", line 38, in movie_post

  db.movies.insert_one(doc)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\collection.py", line 628, in insert_one

  self._insert_one(

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\collection.py", line 569, in _insert_one

  self.__database.client._retryable_write(acknowledged, _insert_command, session)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\mongo_client.py", line 1476, in _retryable_write

  return self._retry_with_session(retryable, func, s, None)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\mongo_client.py", line 1349, in _retry_with_session

  return self._retry_internal(retryable, func, session, bulk)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\_csot.py", line 105, in csot_wrapper

  return func(self, *args, **kwargs)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\mongo_client.py", line 1390, in _retry_internal

  return func(session, sock_info, retryable)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\collection.py", line 557, in _insert_command

  result = sock_info.command(

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\pool.py", line 795, in command

  self._raise_connection_failure(error)

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\pool.py", line 767, in command

  return command(

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\network.py", line 127, in command

  request_id, msg, size, max_doc_size = message._op_msg(

 File "C:\Users\Dodo\Desktop\sparta\projects\03.pedia\venv\lib\site-packages\pymongo\message.py", line 692, in _op_msg

  return _op_msg_uncompressed(flags, command, identifier, docs, opts)

bson.errors.InvalidDocument: cannot encode object: <meta content="한산 리덕스" property="og:title"/>, of type: <class 'bs4.element.Tag'>



취소
 공유
취소
댓글 0
댓글 알림
나의얼굴