inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)

[SSL: CERTIFICATE_VERIFY_FAILED] 에러

5511

손건용

작성한 질문수 1

1

발생에러: urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:997)>

검색어 '고양이' 경우에 위의 에러가 떴습니다.

import ssl       #_ssl.c:997

ssl._create_default_https_context = ssl._create_unverified_context # _ssl.c:997 에러처리

그래서 위의 문구를 검색해서 추가해줬지만, 

여전히, urllib.error.URLError: <urlopen error [SSL: WRONG_SIGNATURE_TYPE] wrong signature type (_ssl.c:997)>에러가 뜹니다.

결국, try로 에러를 처리했는데요. try없이 에러 조치가 가능할까요?

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
import os
import urllib.request
import ssl       #_ssl.c:997
import pyautogui

keyword = pyautogui.prompt()
if not os.path.exists(f'06_구글이미지크롤링/{keyword}'):
    os.mkdir(f'06_구글이미지크롤링/{keyword}')

main_url = f"https://www.google.com/search?q={keyword}&newwindow=1&tbm=isch&sa=X&ved=&biw=1000&bih=900&dpr=1"
browser = webdriver.Chrome("C:/chromedriver.exe")
browser.implicitly_wait(10)
browser.maximize_window()
browser.get(main_url)

#무한 스크롤 처리
before_h = browser.execute_script("return window.scrollY")
while True:
    browser.find_element_by_css_selector("body").send_keys(Keys.END)
    time.sleep(1)
    after_h = browser.execute_script("return window.scrollY")
    if after_h == before_h:
        break
    before_h = after_h

imgs = browser.find_elements_by_css_selector(".rg_i.Q4LuWd") #자료형은 리스트

for i, img in enumerate(imgs, 1):
    browser.execute_script("arguments[0].click();", img)
    time.sleep(1)

    if i == 1:
        target = browser.find_elements_by_css_selector("img.n3VNCb")[0]
    else:
        target = browser.find_elements_by_css_selector("img.n3VNCb")[1]
    img_src = target.get_attribute('src')
   
  opener = urllib.request.build_opener()
    opener.addheaders = [('User-Agent', 'Mozila/5.0')]
    urllib.request.install_opener(opener)

    ssl._create_default_https_context = ssl._create_unverified_context # _ssl.c:997 에러처리
    try:
        urllib.request.urlretrieve(img_src, f'06_구글이미지크롤링/{keyword}/{i}.jpg')
    except:
        continue

urllib. python 웹-크롤링

답변 3

1

손건용

네,선생님

이미 설치되었다고 뜨더라구요. 현상은 동일합니다.

일단 try로 에러 처리는 가능한 부분이라서 천천히 찾아봐야 할 것 같습니다. 감사합니다.

0

스타트코딩

흠... 안되는 군요.

제가 오류를 확인할 수 없으니 ㅠㅠ

 

https://exerror.com/urllib-error-urlerror-urlopen-error-ssl-certificate_verify_failed-certificate-verify-failed-unable-to-get-local-issuer-certificate/

 

이번에는 여기 있는 Solution 들을 한번씩 따라 해보셔요!

 

0

스타트코딩

안녕하세요~!

이게 어떤 컴퓨터에는 오류가 뜨고, 어떤 곳에는 안뜨니

해결하기가 까다롭네요ㅎㅎ

 

저도 오류 내용으로 구글링을 해봤는데

비슷한 오류가 났을 때 해결법을 찾아봤습니다 :)

 

https://blog.minamiland.com/551

요기 블로그에 적혀있는데로 한번 따라 해보셔요ㅎㅎ

해결 여부를 답변 주시면 감사하겠습니다 ^^

셀레니움 환경설정 오류

0

75

2

네이버 로그인 관련

0

340

2

안녕하세요 셀레니움에 대해서 질문

0

102

1

크롤링 연습사이트 문의

0

120

2

선택자 질문

0

89

2

'특정 요소가 나타날 때까지 스크롤' 부분 에러

0

89

2

자동 로그인 질문

0

107

2

44강 제목, 링크

0

112

1

원하는 값이 없을 때

0

103

2

크롤링한 링크가 엑셀로 들어가면 작동이 안되요

0

246

2

셀레니움 PDF자료는 받을 수 있나요

0

108

2

글목록 추출하기

0

109

2

메일 자동화 로그인 중복방지문자해결 오류 및 명시적 대기 질문

0

96

2

강의 노트가 어디에 있는건가요?

0

82

2

강의 커리큘럼 질문

0

111

1

조건문 else 사용하지 않는 이유

0

82

2

셀레니움으로 접근할 수 없는 경우

0

106

2

웹페이지 변경

0

78

2

자바스크립트로 태그 선택 시 질문입니다.

1

71

2

수료증은 어떻게 받나요?

0

128

2

class명을 활용하여 선택자를 만들지 않는 경우..?

0

65

2

드라이버가 안 열려요

0

88

2

이거 해결방법 아시는 분?

0

124

2

네이버 지식인 크롤링..

0

212

2