무료
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결이것이 진짜 크롤링이다 - 기본편
webdriver.implicitly_wait()과 time.sleep()의 차이점이 궁금합니다.
안녕하세요! 우선 이렇게 좋은 강의로 지식공유해주셔서 정말 감사합니다. 강의 중에 셀레늄라이브러리를 활용해 크롤링 하는 경우 브라우저에 웹페이지가 로딩될 때까지 기다려주는 것이 중요하기 때문에 implicitly_wait()와 time.sleep()같은 메서드를 사용해 주는 것이 중요한 것은 알겠는데 실제 크롤링을해 작업을 한다고 할 때, 이 둘의 차이가 뭔지 궁금합니다. 구글링해보니까 webdriver의 경우 explicitly_wait()메서드도 있는데 이 부분이 잘 이해가 가질 않아서 질문드립니다. 추가로 implicitly_wait()메서드의 경우 driver.get()이전에 사용해야 하는 건가요?? 추가로 올려주신 네이버 로그인 자동화 강의에서는 driver.get()위에 적혀있어서요. 순차적으로 실행되서 driver.get()메서드 아래에 있어야 하는 줄 알아서 추가 질문드립니다.
- 미해결이것이 진짜 크롤링이다 - 기본편
pip 오류
구글링해서 나오는 방법들 다 해보고 기존 방법들 안되었던 분이 올린 방법들도 다 해봤는데 여기서 넘어가지를 못하고 있네요. 환경변수도 잘 추가되어있고 그런데 대체 뭐가 문제일까요? 며칠째 이화면만 보고있어요.
- 미해결이것이 진짜 크롤링이다 - 기본편
colab에서 강의를 적용하려면 어떻게 해야할까요?
안녕하세요, 선생님. 선생님의 강의를 local PC에서 학습한 후에 구글 colab 환경에서도 진행하고자 하였는데요. 아래 전체 코드에서 import requests import os # 로컬에선 어쩐지 이것도 넣어줘야 한다 from bs4 import BeautifulSoup #네이버 서버에 대화를 시도한다. 네이버야, 내가 입력한 주소에서 사용하는 html 코드 정보를 줘 response = requests.get("https://www.naver.com") #네이버에서 html 을 주면 html이라는 변수에 담는다 html = response.text # html 변수에 담긴 정보를, 번역해줘! (=아름다운 스프를 만들어줘) 라는 명령을 #soup라는 변수에 담는다. soup = BeautifulSoup(html, 'html.parser') #Soup 대소문자 유의.html.parser는 html 번역 선생님이라는데 무슨 뜻인진 #(soup 변수 실행해서 번역된 값에서) id 값이 NM_SET_home_btm인 놈 하나를 찾아줘 word = soup.select_one("#NM_set_home_btn") # F12에서 확인한 id 앞에 #을 붙여준다. #찾은 것에서 텍스트 요소만 출력해줘 print(word.text) response = requests.get("https://www.naver.com") 부분부터 KeyError: <_SSLMethod.PROTOCOL_TLS_CLIENT: 16> 라는 에러가 뜨며 진행되지 않습니다. 본래 구글 colab에서는 이 코드가 적용되지 않는 것인지 알 수 있을까요?
- 미해결이것이 진짜 크롤링이다 - 기본편
셀레니움 기본설정 강의를 들으며 코드를 작성했는데 실행되질 않습니다..
안녕하세요, 최근에 startcoding님의 크롤링 강의를 보며 공부하고 있는 한 학생입니다. 그런데 공부하는 도중, 한 문제가 발생하였습니다. 원래라면 구글링을 통해 해결할 수 있었는데,도저히 해결되질 않아서 여쭤봅니다. 제가 본 강의는 '(BONUS) 셀레니움 ver 4.0 가이드 + 크롬 드라이버 자동으로 다운 받는 법'입니다. 또한 이 강의를 통해 작성한 코드는 다음과 같습니다. from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options # 크롬 드라이버 자동 업데이트 from webdriver_manager.chrome import ChromeDriverManager # 브라우저 꺼짐 방지 chrome_options = Options() chrome_options.add_experimental_option("detach", True) service = Service(executable_path=ChromeDriverManager().install()) driver = webdriver.Chrome(service=service, options=chrome_options) # 웹페이지 해당 주소 이동 driver.get("https://www.naver.com") 그리고 이 코드를 실행시켰을 때 발생한 오류는 아래와 같습니다. 이 문제에 대하여 제가 구글링을 해 본 결과, 같은 오류를 겪은 사람을 찾을 수 있었습니다. 하지만 이 문제에 대한 해답으로 webdriver_manager 설치를 내놓은 것 같은데, 저는 이미 webdriver_manager가설치되어 있기 때문에 무엇이 잘못된 것인지 잘 모르겠습니다... 그래서 이 오류를 해결할 수 있는 방법을 여쭤보고자 합니다.읽어주셔서 감사합니다 :) + 저와 같은 문제를 겪은 사람을 찾았던 사이트도 올려놓겠습니다.https://stackoverflow.com/questions/72868256/chromedrivermanager-install-doesnt-work-webdriver-manager + 혹시 모르니 제가 가지고 있는 pip list도 올려놓겠습니다.
- 미해결이것이 진짜 크롤링이다 - 기본편
네이버까지는 들어가지는데 네이버 쇼핑이 안떠요 ㅠㅠ
안녕하세요 사진과 같이 코드를 따라 썼는데 네이버 메인까지는 들어가지는데 이후 네이버 쇼핑란이 안뜹니다 ㅠㅠ (* DeprecatedWarning 및 셀레니움 경고 메시지를 안뜨게 하는 방법 도 수행해보았는데 똑같아요) 그래서 그 다음 코드는 수행해보지 못하고 있어요 뭐가 문제일까요? 오타도 확인했는데 오타는 없는거 같아 보여요 참고로 저는 browser.find_element_by_css_selector 작성할떄 browser.find_element까지만 자동완성되고 이후는 자동완성으로 안뜨는데 뭔가 설치가 안된 기능이 있는걸까요? 참고로 오류 메시지는 다음과 같이 출력됩니다 AttributeError: 'WebDriver' object has no attribute 'find_element_by_css_selector' (base) C:\startcoding>[1364:12544:0626/121605.283:ERROR:device_event_log_impl.cc(214)] [12:16:05.283] USB: usb_device_handle_win.cc:1048 Failed to read descriptor from node connection: 시스템에 부착된 장치 가 작동하지 않습니다. (0x1F) [1364:12544:0626/121605.345:ERROR:device_event_log_impl.cc(214)] [12:16:05.345] USB: usb_device_handle_win.cc:1048 Failed to read descriptor from node connection: 시스템에 부착된 장치가 작동하지 않습니다. (0x1F) [1364:13436:0626/121658.110:ERROR:util.cc(127)] Can't create base directory: C:\Program Files\Google\GoogleUpdater [6104:9888:0626/121757.755:ERROR:gpu_init.cc(486)] Passthrough is not supported, GL is disabled, ANGLE is
- 미해결이것이 진짜 크롤링이다 - 기본편
셀레니움 기초 사용법 - find_element_by_css_selector가 존재하지 않습니다.
네이버 페이지가 열리는 것까지는 되는데 그 후에 쇼핑탭을 클릭하기 위해서 find_element_by_css_selector함수를 이용하니 사진과 같은 에러가 뜹니다. 혹시 관련이 있을까 싶어 셀레니움 설치 시 오류메세지가 뜬 것도 함께 첨부합니다! ERROR: conda 4.12.0 requires ruamel_yaml_conda>=0.11.14, which is not installed. ERROR: requests 2.24.0 has requirement urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1, but you'll have urllib3 1.26.9 which is incompatible. Installing collected packages: h11, wsproto, async-generator, sniffio, outcome, trio, trio-websocket, urllib3, selenium Attempting uninstall: urllib3 Found existing installation: urllib3 1.25.9 Uninstalling urllib3-1.25.9: Successfully uninstalled urllib3-1.25.9 Successfully installed async-generator-1.10 h11-0.13.0 outcome-1.2.0 selenium-4.3.0 sniffio-1.2.0 trio-0.21.0 trio-websocket-0.9.2 urllib3-1.26.9 wsproto-1.1.0
- 미해결이것이 진짜 크롤링이다 - 기본편
크롤링시 url 변화 부분 중
"삼성전자" 검색, 1page https://search.naver.com/search.naver?where=news&sm=tab_pge&query=삼성전자&sort=0&photo=0&field=0&pd=0&ds=&de=&cluster_rank=40&mynews=0&office_type=0&office_section_code=0&news_office_checked=&nso=so:r,p:all,a:all&start=1 "삼성전자" 검색, 2page https://search.naver.com/search.naver?where=news&sm=tab_pge&query=삼성전자&sort=0&photo=0&field=0&pd=0&ds=&de=&cluster_rank=62&mynews=0&office_type=0&office_section_code=0&news_office_checked=&nso=so:r,p:all,a:all&start=11 여기서 초록 글씨를 변수로 두는 것은 이해가 가는데, 붉은 글씨는 requests.get() 안에 들어가지 않아도 크롤링이 되는 이유는 무엇인가요?
- 미해결이것이 진짜 크롤링이다 - 기본편
왜 오류가 난건지ㅠㅠ
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유 typeerror 가 났는데 해결방법이 어떻게 될까요 ㅠㅠ?
- 미해결이것이 진짜 크롤링이다 - 기본편
크롤링 실전 강의 문의드립니다
실전 강의 커리큘럼의 쿠팡 크롤링에서 혹시 어떤 항목들을 크롤링하는지 자세히 알 수 있을까요?
- 미해결이것이 진짜 크롤링이다 - 기본편
실행시 한글이 깨지는데 어떻게 해야 하나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 미해결이것이 진짜 크롤링이다 - 기본편
실시간으로 올라오는 뉴스기사
실시간으로 올라오는 뉴스데이터도 바로 크롤링해서 알림이 가능한가요??
- 미해결이것이 진짜 크롤링이다 - 기본편
주식 크롤링 이름 받아오는 법
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 친절하신 설명 덕분에 현재가 받아오는 방법은 충분히 완료하였습니다. 지금은 추가로 주식의 이름을 받아오고 싶은데 아래와 같은 조건이면 soup.select_one() 괄호 안에 들어갈 html코드를 무엇을 잡아야 할 지 감이 안잡혀서 질문드립니다. <h2> <a href="#" onclick="clickcr(this, 'sop.title', '', '', event);window.location.reload();">삼성전자</a> </h2> 잘 부탁드리겠습니다.
- 미해결이것이 진짜 크롤링이다 - 기본편
블로그 업로드 관련
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강사님, 안녕하세요 :) 강사님의 강의를 너무 좋아하는 학생입니다. 개인적으로 공부 블로그를 운영 중인데, 출처와 함께 수업 중 다룬 내용 업로드가 가능할지 문의 드립니다. 답변 주시면 참고하도록 하겠습니다. :) 감사합니다!
- 미해결이것이 진짜 크롤링이다 - 기본편
무한 스크롤 질문드립니다.
안녕하세요 먼저 좋은 강의 감사드립니다. 강의를 보고 크롤링을 시도하던 중 무한 스크롤부분에서 문제점이 발생했습니다. 제가 크롤링 하려고 한 사이트에서 전체 데이터를 보기 위해서는 무한 스크롤을 진행 해야 하는데, 데이터 더보기를 클릭하면 오로지 마우스 스크롤로 밖에 내려갈 수 없는 창이 등장합니다. 이곳에서 스크롤을 진행하려면 셀레니움으로는 불가능 한건가요? 키보드의 pgdn키나 end키가 사용불가능하고 옆에 스크롤창이 등장하긴 하지만, F12키를 누르면 스크롤창클릭할 수 있는 태그가 존재하지 않습니다.
- 미해결이것이 진짜 크롤링이다 - 기본편
엑셀 내용 저장
안녕하세요 스타트 코딩님 엑셀에 내용을 저장하는 부분이 잘 되지 않아 질문드립니다. 처음에 아래와 같은 mkl-service 패키지 관련 에러가 발생해 관련 해당 사이트를 통해 install하였으나 C:\Users\user\anaconda3\lib\site-packages\numpy\__init__.py:143: UserWarning: mkl-service package failed to import, therefore Intel(R) MKL initialization ensuring its correct out-of-the box operation under condition when Gnu OpenMP had already been loaded by Python process is not assured. Please install mkl-service package, see http://github.com/IntelPython/mkl-service from . import _distributor_init 설치 후 코드에 from . import _mklinit 위 코드를 입력하였는데도 C:\Users\user\anaconda3\lib\site-packages\numpy\__init__.py:143: UserWarning: mkl-service package failed to import, therefore Intel(R) MKL initialization ensuring its correct out-of-the box operation under condition when Gnu OpenMP had already been loaded by Python process is not assured. Please install mkl-service package, see http://github.com/IntelPython/mkl-service from . import _distributor_init Traceback (most recent call last): File "C:\startcoding_crawling\02_파이썬엑셀다루기\01_엑셀만들기.py", line 2, in <module> import mkl File "C:\Users\user\anaconda3\lib\site-packages\mkl\__init__.py", line 49, in <module> from . import _mklinit ImportError: DLL load failed while importing _mklinit: 시스템에서 파일에 액세스할 수 없습니다. 위와 같은 에러가 뜨면서 저장이 되지를 않습니다. 이런 경우 어떻게 해야하나요?? 구글링을 통해 아래의 사이트를 발견하기는 했는데 여기서 어떻게 해결해야할지를 잘 모르겠습니다ㅠㅠ https://conda.io/projects/conda/en/latest/user-guide/troubleshooting.html#numpy-mkl-library-load-failed
- 미해결이것이 진짜 크롤링이다 - 기본편
select() class명 질문입니다.
안녕하세요. 좋은 강의 제공해주셔서 감사합니다! 제 블로그에 있는 제목들을 크롤링 해보고 싶어서 코드를 작성하고 있는데, 첨부한 사진과 같은 클래스 명이 있어서 test = bsObject.select(".sc-dtMgUX fmewbM") 위와 같이 작성을 해도 받아오질 못해서 구글링을 해봤는데도 해결을 못해서 질문 올립니다... 전체 코드입니다. import requestsfrom bs4 import BeautifulSoupres = requests.get("https://velog.io/@0__h0__")bsObject = BeautifulSoup(res.text, "html.parser")test = bsObject.select(".sc-dtMgUX fmewbM")print(test)
- 미해결이것이 진짜 크롤링이다 - 기본편
선생님 선택자 태그에 대해 질문드리고 싶은게 있습니다
네이버 쇼핑 링크에서 class가 nav shop이고 영상에서 선택자를 찾아보라고 하셨을때 a.nav.shop라고 하셨는데 왜 a.nav.shop가 되는지 알고싶습니다.. 왜 a.nav.shop으로 되는지 모르겠네요 ㅠㅜ...(수업을 다 보니까 input.co_srh 이것두 궁금합니다..!)
- 미해결이것이 진짜 크롤링이다 - 기본편
크롬 개발자 도구
안녕하세요. 너무 기초적인 질문이라 죄송 스럽지만... 크롬 개발자 도구에서 태그 입력하는 부분이 저는 없는 것 같아서.. 혹시 옵션에서 나오게 할 수 있을까요?
- 미해결이것이 진짜 크롤링이다 - 기본편
prompt 사용 시 에러가 발생 합니다.
안녕하세요. 강의 잘 듣고 있습니다. pyautogui.prompt를 사용하면 "Tkinter is required for pymsgbox" 에러가 발생하고 있습니다. 혼자서 찾아서 해결해보려고 했는데 잘 안되서 이곳에다 글 남깁니다 ㅜㅜ 감사합니다.
- 미해결이것이 진짜 크롤링이다 - 기본편
prompt 사용 시 에러가 발생 합니다.
안녕하세요. 강의 잘 듣고 있습니다. pyautogui.prompt를 사용하면 "Tkinter is required for pymsgbox" 에러가 발생하고 있습니다. 혼자서 찾아서 해결해보려고 했는데 잘 안되서 이곳에다 글 남깁니다 ㅜㅜ 감사합니다.