쉽게 처음하는 파이썬 고급 크롤링 [Scrapy, Selenium, Headless Chrome]
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다) - 이외의 문의등은 평생강의이므로 양해를 부탁드립니다 - 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다 - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. <동적 웹사이트와 크롤링> - REST API 안녕하세요. 강의 잘 듣고 있습니다. REST API라고 하는 것이 데이터를 주고 받는 방법인 것은 알겠는데요. 이것이 프론트엔드와 백엔드의 데이터를 주고받는 방식이라고 이해하는게 좀 어려워서 부가설명을 부탁드립니다. 회사를 기준으로 이해하다보니 더 와닿지 않습니다. 제가 가끔씩 보는 사내의 IT개발은 JSP로된 2000줄 정도 되는 코드에 어떤 데이터가 필요하면, 데이터를 뽑는 쿼리를 데이터 베이스 담당하시는분한테 묻고 그 해당 쿼리를 집어넣고??하는 방식으로 하는 것 같은데, 제가 집에서하는 템플릿 코드 작성방식과와 다르지 않다고 이해해오고 있는데요. 규모가 큰 회사에서는 OPEN API 설명서처럼 백엔드에서DATA를 전달하는 방식을 구현해 놓는건가요? 그리고 한가지만 더 질문을 드리면, 제가 Flask 강의도 듣고 있는데요. 사실 백엔드와 프론트엔드의 차이를 잘 느끼지 못했습니다. 하나의 템플릿에 데이터를 넣어주는 역할까지를 백엔드가 하고 단지 프론트는 그 템플릿을 예쁘게 하는 역할을 하는것인가요? 만약 그렇다면 템플릿 상속도 있고, HTML CODE도 계속해서 변하는데 구분없이 혼자하는게 더 수월하겠다는 생각이 들어서요. 어떤 식으로 역할을 분배하고 일하는지 궁금합니다. 정말 좋은 강의 잘듣고 있습니다. 감사합니다!
vscode 사용하고 있습니다. 코딩과 실행 모두 문제는 없으나 selenium 관련 명령 입력할때는 김플님 강의화면과 달리 자동완성 기능이 작동하지 않습니다. 예를 들어, options = Options() options. 까지 입력하면 여러가지가 나오고 그 중 add_experimental_option 이 떠야되는데 그렇지 않아 매번 직접 타이핑하고 있습니다. 해결방법이 있을까요?
안녕하세요. 강의 잘 듣고 있습니다. 셀레니움과 웹드라이버 매니저 패키지를 설치하고 크롬 페이지 여는 부분에서 크롬이 열렸다가 빠르게 닫힙니다. (Process finished with exit code 0 라고 터미널 내 노출) 현재 다운받은 셀레니움 패키지는 selenium-4.8.3 웹드라이버 매니저 패키지는 webdriver_manager-3.8.5 입니다. 이전 질문에 공유주신 방법대로 크롬도 최신 버전으로 업데이트하고, 아래 코드도 실행해보았으나 여전히 크롬이 자동으로 닫힙니다. from selenium import webdriver from selenium.webdriver.chrome .service import Service from webdriver_manager.chrome import ChromeDriverManager def set_chrome_driver(): chrome_options = webdriver.ChromeOptions() driver = webdriver.Chrome (service=Service(ChromeDriverManager().install()), options=chrome_options) return driver 답변 부탁드립니다. 감사합니다.
다음 카페 크롤링을 이 강의를 통해 하고 있습니다. 다음 카페 로그인 및 해당 게시판 까지는 이동이 되는 데, 해당 글 내용에 대한 크롤링이 되지 않습니다(Xpath나 class를 이용해도 게시글이 클릭도 안되는데 그 이유가 궁급합니다.ㅠㅠ / ) <a href="/_c21_/bbs_read?grpid=5RFF&fldid=Acvb&contentval=002Lizzzzzzzzzzzzzzzzzzzzzzzzz&datanum=9034&page=1&prev_page=0&firstbbsdepth=&lastbbsdepth=zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz&listnum=20" class="txt_item">심한 자폐아이 </a> 여기 안에 있는 내용을 가지고 오고 그 아래 부분의 글로 가지고 오려고 합니다...
이전 질문에 대해서 너무나도 빠른 답변 감사합니다. 해결되었습니다. 어떻게 해결책을 찾으셨나요? 쿠팡 part빼고 완강했는데, 다 들어보겠습니다. 다른 질문이 있습니다. 손흥민을 input값을 받아도 단순하게 더해서는 하이퍼링크된 url이 형성되지 않습니다. 저는 quote_plus를 사용해서 해결했는데, 강사님은 어떻게 해서 단순하게 더해서 하이퍼링크된 url이 완성될까요?
강사님의 훌륭한 강의력에 감탄하며 쿠팡 크롤링을 제외한 부분은 다 들었습니다. 감사합니다. 쿠팡 크롤링 파트에 질문이 있습니다. 3월27일 기준으로 위 방법이 막힌것같습니다. 다른 방법을 찾으려고 했지만, 셀레니움 밖에 찾지 못했습니다. 뷰티풀숩을 이용한 해결책은 없나요?
5. bot detection 피하기 고급편에 나온 소스를 그대로 적용하였습니다. 다른 부분은 문제가 없고, 에러 또한 없습니다. 그런데 window-size 관련된 argument 값이 적용이 안됩니다. 항상 큰 사이즈의 윈도우만 오픈되고 있습니다. python 버젼은 3.11.0 입니다. 버젼을 다운그레이드 해야 할까요?
우선 강의대로 블랙핑크, 손흥민 검색했을때 강의처럼 결과가 잘 나옵니다. 제가 다른 키워드인 '제휴마케팅'으로 검색하니 첨부한 사진과 같은 결과가 나왔습니다. 혹시나 중간에 네이버 파워컨텐츠 광고가 있어서 그런건가해서 개발자도구로 코드를 비교해봤는데 그건 아닌거같고, 원인을 아직 모르겠어서 질문남깁니다. (수업처럼 크롤링 결과는 잘 나오고 맨 마지막에 아래와 같은 문구가 나왔습니다). 그리고 print(len(areas))부분도 '제휴마케팅'으로 검색했을땐 나오지 않았구요.
1. 요기서 row 가 튜플형태라고 하셨는데 어떻게 튜플형태인지 어떻게 아는지 궁금합니당 데이터 바꾸는건 list 라서 바꿀수있는게 아닌가 해서용 2. 아래 것이 너무 이해가 안갑니다 ㅠㅠ 순번 [A1] 부분은 어떻게 구분해서 [A2]부터 1,2,3,...입력되는 것인지 궁금합니다. i =0 으로 시작 > i 가 0이 아닌경우 cell.value = i ? i = 0 for cell in wns['A']: if i !=0: cell.value = i i = i + 1
안녕하세요, 셀레니움 활용 - 네이버 메일 자동화하기를 보면서 따라하고 있는데 실행시 터미널에 [18264:6540:0311/233731.555:ERROR:device_event_log_impl.cc(218)] [23:37:31.555] USB: usb_device_handle_win.cc:1046 Failed to read descriptor from node connection: 시스템에 부착된 장치가 작동하지 않습니다. (0x1F) 라는 문구가 뜹니다. 해당 문구를 무시해도 되나요?
서두에 얘기하신 것처럼 찾기어려운 정보가 포함되어 있고, 도움이 많이 되었습니다. 몇가지 문의사항이 있어서 올립니다. 1. selenium 으로 정상작동했는데, undetected_chromedriver 로 바꾸면 사이즈가 굉장히 넓게 나오네요 options.add_argument(f'--window-size=360,640') 다른 소스는 동일하고 --window-size 도 동일하게 넣었는데, 이상하네요. 강의 영상으로 봐도 소스는 동일한 걸로 보이는데, 무슨 차이가 있을까요? => 확인된 내용 추가로 적습니다. https://github.com/ultrafunkamsterdam/undetected-chromedriver/issues/1100 현재 최신버젼은 3.4.6 버젼인데 위 내용으로 보면 3.4.5 버젼부터 작동되지 않는다고 하네요. 3.4.4 버젼으로 다운시키니 정상작동됩니다. 안되시는 분들은 참고하시기 바랍니다. 최신버젼으로 사용가능한 방법이 있으면 알려주시기 바랍니다. 아래 답변 참고하세요 2. 네이버의 경우 --headless나 --incognito 를 사용해도 영향이 있을까요?