• 카테고리

    질문 & 답변
  • 세부 분야

    데이터베이스

  • 해결 여부

    미해결

최종코드 관련하여 질문드립니다.

20.04.20 09:32 작성 조회수 168

0

안녕하세요!
현재 즐겁게 실습하고 있는 직딩입니다 ㅎ

질문을 드린 이유는 최종 코드로 지마켓의 데이터를 크롤링을 쥬피터 노트북으로 하다보니 크롤링 중 1분정도가 지나면 위와 같은 오류코드가 발생하고 있습니다 ㅠㅠ

수업에서 말씀해주신 파이참으로 코드를 돌릴경우

위와 같은 오류가 발생하고 있는데 제가 어떻게 조치하면 될지....해답(?)을 부탁드리겠습니다 ㅠ

답변 1

답변을 작성해보세요.

0

안녕하세요. 1번 이미지와 2번 이미지의 에러가 달라보여요.

1번은 인터넷 환경이 안좋아서, 에러가 난 것으로 보이구요.

2번은 조금 복잡한데요. 다음과 같이 해보셔도 좋을 것 같은데, 왠지 결국 두 에러 모두가 결국 인터넷 환경과 관련이 있는 것이 아닌가 싶습니다. 또는 PC가 너무 느려서인지도 모르겠어요. 일단은 인터넷 환경이 좋은 곳에서 테스트를 해보시면 좋을 것 같고, 특정 카테고리만 테스트를 해보거나, 상품 상세 페이지로 들어가는 부분을 빼고, 관련 코드를 조금 수정해서, 테스트를 해보시는 것도 좋을 것 같습니다.

수강생님의 특정 테이블이나 레코드에 락이 걸려있어서 인듯해요. 해결방법은 터미널 모드로 mysql 터미널 모드로 들어가신 후, 아래와 같이 프로세스들을 확인하고, 의심(?)되는 것을 킬하면 됩니다.

mysql> show processlist; (프로세스 확인)

+----+-----------------+-----------+------+---------+------+------------------------+------------------+

| Id | User            | Host      | db   | Command | Time | State                  | Info             |

+----+-----------------+-----------+------+---------+------+------------------------+------------------+

|  4 | event_scheduler | localhost | NULL | Daemon  |   98 | Waiting on empty queue | NULL             |

| 10 | root            | localhost | NULL | Query   |    0 | starting               | show processlist |

+----+-----------------+-----------+------+---------+------+------------------------+------------------+

2 rows in set (0.00 sec)

mysql> kill 10; (의심되는 아이디 킬하기)

mysql> unlock tables; (모든 테이블 unlock 하기)

하지만, 이런 부분이 어렵다면, mysql을 재실행한 후 실행하면 좋을 것 같습니다.

mysqld restart