Post

github 사이트에서 webtoon랭킹 크롤링 오류 해결해보자

크롤링 run file 오류

  • 크롤링 run file 오류에 대해서 제가 해결한 방법을 공유하려고 하는데요
  • 종류가 오류의 종류는 다양하니 제 걸 봐도 해결이 안 될 수 있지만 어떤 방식으로 해결했는지 알려드리겠습니다.

여러개의 파일로 크롤링하지 않기

  • 저는 크롤링했을 때 액션에 가서 확인을 해보니 여러개의 파일중 하나만 오류나도 계속 오류가 났다고 나오는 거 같아서 5개에서 2개로 줄여줬습니다.

  • 단지 저의 추측이니 따라하지 않으셔도 됩니다.

스크린샷 2024-05-03 오후 4 33 17

두개로 줄여주고 Action에 가서 오류 내용을 보면 이렇게 나옵니다.

  • 저는 크롤링에서 제일 많이 오류 나는 게 run file 오류라고 생각하는데요
  • 아무리 chat gpt에서 물어봐도 chrome driver 버전이 문제라고 나오는데요

이미지

  • 이 부분을 물어보시면 Action에서 lezincomics.py line 21에 문제가 났다고 합니다.
    1
    2
    
     File "/home/runner/work/webtoon-rank/webtoon-rank/lezincomics.py", line 21, in <module>
      browser = webdriver.Chrome(service=service, options=options)
    
  • 저는 천천히 하나씩 물어보기 위해서 제일 위에서 난 이 오류만 Chat GPT에서 물어봤습니다.

스크린샷 2024-05-03 오후 4 44 27 스크린샷 2024-05-03 오후 4 47 07

1
2
3
4
5
6
7
8
9
10
11
12
13
14
from selenium import webdriver
from selenium.webdriver.chrome.service import Service as ChromeService
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options as ChromeOptions

# Chrome 서비스 설정
service = ChromeService(ChromeDriverManager().install())

# Chrome 옵션 설정
options = ChromeOptions()
options.add_argument('--headless')

# Chrome 시작
browser = webdriver.Chrome(service=service, options=options)
  • 그럼 Chat GPT가 이렇게 설정하라고 코드를 보내주는데요 이것을

  • 이것을 오류가 났다고 하는 lezincomics.py에 넣어주시면

스크린샷 2024-05-03 오후 4 50 15

run file에서의 오류는 해결이 될 거 같습니다

run file 오류 요약

  • 파일의 개수를 줄인다.
  • 오류난 부분의 제일 윗부분 부터 Chat GPT한테 물어본다.
  • Chat GPT가 준 코드를 알맞는 위치에 넣어준다.

Commit 오류

  • 저는 run file을 해결하고도 오류가 났는데요 그래서 또 찾아보니
1
2
3
Run git config --global user.email "nys060121@naver.com"
fatal: pathspec 'lezincomics_*.json' did not match any files
Error: Process completed with exit code 128.

스크린샷 2024-05-03 오후 4 53 43

  • 이렇게 나오는데요 이걸 해석해보면 lezincomics_*.json 와 같은 파일을 찾을 수 없다고 나오는데요

  • current_date = datetime.now().strftime(“%Y-%m-%d”)
  • filename = f”lezincomic_{current_date}.json”

스크린샷 2024-05-03 오후 5 00 38

  • 저는 바보같이 yml파일에서 lezincomics라고 지정해주고
  • Python파일에서는 lezincomic이라고 했기 때문에 오류가 났습니다

중요

  • yml에서 지정해준 이름과 lezincomics.py파일에서 지정해준 json파일 이름이 똑같은지 확인을 합시다.

스크린샷 2024-05-03 오후 5 01 44

  • 이렇게 오류가 난 부분을 하나하나 정확하게 파악하고 비교하시면 해결하는데 조금이나마 진전이 있을 것입니다.
  • 크롤링 문제를 빠르게 해결하실 수 있도록 응원하겠습니다.

Commit 오류 요약

  • 파일이름.py과 yml에서 저장할 파일 이름이 똑같은지 확인을 한다.

전체 요약

  • 파일 개수를 줄인다.
  • Action에서 오류난 제일 위에 부분부터 Chat GPT한테 물어본다.
  • yml과 py에서 지정해준 json파일의 이름이 똑같은지 확인한다
This post is licensed under CC BY 4.0 by the author.