66,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
select()할때 조금 복잡한 selctor일 경우
안녕하세요. 저는 왓챠피디아에서 영화 순위를 크롤링하려고 했는데요. 왓챠피디아는 박스오피스, 왓챠플레이, 넷플릭스에 관해 각각 순위가 메겨져 있어서 저는 왓챠플레이만의 순위를 가져오려고 해당 selctor 를 복사했는데, 아래와 같아요. #root > div > div.css-1sh3zvx-NavContainer.ebsyszu0 > section > div > section > div:nth-child(2) > div.css-gc1vu8-StyledHorizontalScrollOuterContainer.ebeya3l4 > div > div.css-chidac-ScrollBar.e1f5xhlb1 > div > div > ul > li:nth-child(2) > a > div.css-dmreg0-ContentInfo.e3fgkal2 > div.css-1teivyt-ContentTitle.e3fgkal3 위 코드가 복잡하긴 한데, 굵게 칠한 div:nth-child(2) 가 없으면 왓챠플레이 뿐만 아니라 넷플릭스랑 박스오피스도 불러와져서 그냥 저 코드를 다 사용해서 아래와 같이 만들었습니다. import requests from bs4 import BeautifulSoup movie_lists= [] res = requests.get('https://pedia.watcha.com/ko-KR/') soup = BeautifulSoup(res.content, 'html.parser') data = soup.select('#root > div > div.css-1sh3zvx-NavContainer.ebsyszu0 > section > div > section > div:nth-child(2) > div.css-gc1vu8-StyledHorizontalScrollOuterContainer.ebeya3l4 > div > div.css-chidac-ScrollBar.e1f5xhlb1 > div > div > ul > li > a > div.css-dmreg0-ContentInfo.e3fgkal2 > div.css-1teivyt-ContentTitle.e3fgkal3') for movie in data: movie_name= movie.select_one('div.css-1teivyt-ContentTitle.e3fgkal3') movie_date = movie.select_one('div.css-6t186m-StyledContentYearAndNation.ebeya3l12') movie_info = [movie_name.get_text().strip(), movie_date.get_text().strip()] movie_lists.append(movie_info) 근데 여기서 movie_lists에 아무것도 append가 되어있지 않아요ㅠㅠ. 그래서 그냥 왓챠, 넷플릭스, 박스오피스 순위가 다 나올 수 있는 밑에 코드로 바꿨는데요. ul > li > a > div.css-dmreg0-ContentInfo.e3fgkal2 -> import requests from bs4 import BeautifulSoup movie_lists= [] res = requests.get('https://pedia.watcha.com/ko-KR/') soup = BeautifulSoup(res.content, 'html.parser') data = soup.select('ul > li > a > div.css-dmreg0-ContentInfo.e3fgkal2 ') for movie in data: movie_name= movie.select_one('div.css-1teivyt-ContentTitle.e3fgkal3') movie_date = movie.select_one('div.css-6t186m-StyledContentYearAndNation.ebeya3l12') movie_info = [movie_name.get_text().strip(), movie_date.get_text().strip()] movie_lists.append(movie_info) 이러면 list에 다 append가 다 되어있어요. select('')할때 너무 길게 코드를 쓰면 안되는 건가요??? 강의 정말 잘 보고 있습니다! 답변 남겨주시면 감사하겠습니다.~
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
자료는 어떻게 받을 수 있나요?
안녕하세요! 이제 막 강의에 입문한 늦깎이입니다. 강의 안내에 자료를 주신다고 안내되어 있는데 어떻게 받을 수 있나요^^
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
감사합니다.
수업과는 번외 질문이지만 질문남겨봅니다! 지금 제가 크롤링을 하는데 주신 코드들을 보면서 크롤링하고 엑셀까지는 조합해서 만들수있습니다. 하지만 가끔 되게 고민해도 아예 안될때까 있는데, 원래 이런건가요 ?뭔가 강의가 100이면 저는한 40~60 정도 익힌것 같습니다! 다음강의로 넘어가기전에 한번데 복습하는게 맞는걸까 고민됩니다ㅠ!자꾸 귀찮게 해서 진심으로 죄송합니다!
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
13분08초 부분쯤에 질문이있습니다
항상 최대한 잘 알려주려고 노력해주셔서 감사합니다 API에서 엑셀로 옮길때 이런 태그들이 같이 나와가지고 없애고 싶어서 밑에 질문들을 보고 시도하고있는데 .get_text()나 .string을 썻는데 도오류가 떠가지고 질문드립니다. data = res.json() for item in data['items'] : num += 1 excel_sheet.append([num, item['title'] , item['link']]) 코드는 이부분입니다.
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
셀레니움 관련 문의드립니다.
크롤링 관련 기법을 보다 자세히 알아보다 보니 셀레니움이라는 더 다음 단계가 있더라구요. 강사님의 다음 강좌를 수강신청하기 전에 셀레니움 관련 한 가지 문의드리고자 합니다. 동적인 페이지 크롤링 시에는 셀레니움이 반드시 필요한 걸로 아는데, 로그인이 필요한 페이지를 크롤링 할 경우에도 무조건 셀레니움을 사용하여야만 크롤링을 할 수 있는 건가요?
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
연습문제 코드 정답 확인부탁합니다
Exercise 4. 형 변환 문자열 '720'를 정수형으로 변환하라. 정수 100을 문자열 '100'으로 변환하라. 에 대한 코드가 아래가 맞나요? 답은 그냥 720 과 100으로 나와서 ......... digit_str=str("720")digit_int=int(digit_str)print(digit_int)digit_int=int(100)digit_str=str(digit_int)print(digit_str)
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
크롤링에서 다시 크롤링 하기 질문있습니다.
안녕하세요 열심히 수업듣고 있는 직장인입니다. 크롤링에서 다시 크롤링부분을 실전에서 연습을 해보고 싶어서 코드를 작성을 해보았는데요 잘안되어서 개인적인 부분이지만 질문을 드립니다.. 여러 시도를 해봤는데 안되네여 ㅠㅠ import requests from bs4 import BeautifulSoup for num in range(1,2): res = requests.get("https://www.krcert.or.kr/data/secNoticeList.do?page="+str(num)+"&sort_code=&sort_code_name=&search_sort=title_name&search_word=") sop = BeautifulSoup(res.content,"html.parser") items = sop.select("tr") for item in items: columns = item.select('td') row_str="" for column in columns: #res1 =requests.get(column['href']) #soup1 = BeautifulSoup(res1.content,"html.parser") #lists1 = soup1.select_one("#contentDiv > table > tbody > tr > td > table > tbody > tr > td") row_str += ',' + column.get_text().strip() print(row_str[1:]) 저 진한 부분 3줄의 'href' 부분을 크롤링 해서 데이터를 가져오고 싶은데... href 부분을 불러오는데 계속 실패를 하네여 위치를 바꾸고 다른방법을 써봐도 계속 오류만 나와서 그러는데 방법이 있을까여??
- 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
복합적으로 해봤는데 3시간 매달렸는데 너무 어렵습니다.
삭제된 글입니다
- 해결됨파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
jupyter notebook 실행관련
아나콘다 앱에서 주피터노트북을 클릭하면 1시간넘게 기다려도 실행이 안됩니다. jupyter notebook 을 별도로 검색하여 cmd 화면에, To access the notebook, open this file in a browser: 를 입력하여 나온 주소를 통해서 들어갈 수 는 있으나 과정이 다소 불편하여 고민입니다. q&a에 검색해보니 사용자계정을 영어로 바꾸면 문제가 해결된다고 하는 글이 있었는데 사용자계정은 이미 영어입니다. 어떻게 해야 할까요?
- 해결됨파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
수업자료 중에 ipynb파일을 파이썬으로 열면 아무것도 없어요
삭제된 글입니다
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
실시간 인기검색어
이 베스트100 인기 검색어에도 그냥 글자만 있는것이 아니라 앞에서 강의해주신거처럼, 1~100까지 앞에 순위가 붙어있으면 좋겠는데요 어떻게 코딩하면 될까요 일단 무작정 시도해본 코드는 import requests from bs4 import BeautifulSoup res = requests.get('https://search.shopping.naver.com/best100v2/detail.nhn?catId=50000000') soup = BeautifulSoup(res.content, 'html.parser') data = soup.select('#productListArea > ul > li > p > a') for index, item in data: print(str(index +1)+'.', item.get_text()) 입니다. 어디서 뭘 바꿔야하는지 알려주세요
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
크롤링 find 와selector 차이
돌려봐도 이해가 안가서 그러는데 둘의 정확한 차이가 어떤건가요 find_all 을쓰면 그문장 똑같이 다가져올수 있는거아닌가요? 언제 뭘써야할지 어떻게 해야할지 헷갈립니다 ㅠㅠ
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
이어서 질문드립니다!
음.. 그 for index in range(10): requests.get('링크~~~='+ str(index)) 이 부분을 어이다가 넣으면 되는건가요 ? 제가 http://www.inven.co.kr/board/maple/2298?category=%EC%97%94%EC%A0%A4%EB%A6%AD%EB%B2%84%EC%8A%A4%ED%84%B0&sort=PID&p=1 예시로 이 사이트에서 검색에 '시커'와 관련된 제목들만 모아보고싶습니다. (그냥 검색부분을 이용해도 되긴하지만 크롤링을 이용해서 한번 도전해 보고싶었습니다) 하지만 밑에 페이지가 1,2,3 등등에도 '시커'와 관련된 제목들이 있어서 그부분을 가지고 싶은데 import requests from bs4 import BeautifulSoup res = requests.get('https://davelee-fun.github.io/blog/crawl_test') soup = BeautifulSoup(res.content,'html.parser') titles = soup.find_all('li','course') for title in titles: print(title.get_text()) 기본 크롤링 소스에서 페이지를 가지고 오는 쪽이니까 res 쪽에 이용해서 저부분을 넣으면 된다는건가요? 만약에 넣으면 되는게 맞다면 어떻게 활용해야할까요 ? for index in range(10): requests.get('링크~~~='+ str(index)) 이부분을 리스트형태로 나온것을 변수에 저장해서 그 변수를 변수.content, 'html.parser'를 해서 soup에 넣고 하면 되는건가요 ? 좀더 수업을 듣고난 후에 해보고 이해못하면 그때 다시 여쭈어 볼까요?
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
내용
만약에 크롤링 하고싶은 단어가있는 페이지가 있는데 그 단어가 들어있는 페이지도 있고 안들어있는 페이지도 있어서 밑에 번호로 1, 2 , 3 , 4 등등으로 페이지가 이렇게 넘어가게 되는 경우는 어떻게 할수있을까요? 따로 한번에 크롤링 하는 방법이 있을까요 ? 아니면 하나하나 크롤링해서 정보를 모으는 건가요?
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
네이버 사이트 크롤링 (연습) 오류
안녕하세요... 뻔한 낮은 수준질문일 수 있지만 기 질의응답 내용을 보고도 제 문제와 연결지어 생각이 잘 안되서요... 네이버 GNB 메뉴 리스트를 크롤링해보고 싶었습니다. ■개발자모드에서 (노랑 바탕칠 부분)이 해당 영역을 뜻하는것을 확인하고 ■아래와 같이 작성해보았는데 import requests from bs4 import BeautifulSoup res = requests.get('https://www.naver.com/') soup = BeautifulSoup(res.content,'html.parser') titles = soup.find('div', id='gnb') for title in titles: print(title.get_text()) ■ 이런 오류문구가 뜨는데... GNB 영영을 텍스트로 가져올수 없다 라고 하는거같은데 왜 어떤 차이점 떄문에 못가져오는지 궁금합니다.. --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) <ipython-input-24-15ace1329085> in <module> 7 titles = soup.find('div', id='gnb') 8 for title in titles: ----> 9 print(title.get_text()) ~\anaconda3\lib\site-packages\bs4\element.py in __getattr__(self, attr) 869 raise AttributeError( 870 "'%s' object has no attribute '%s'" % ( --> 871 self.__class__.__name__, attr)) 872 873 def output_ready(self, formatter="minimal"): AttributeError: 'NavigableString' object has no attribute 'get_text' 답변 부탁드려요 감사합니다.
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
33번문제 질문드립니다
data = input() var = data.split(',') for i in range(4): print(var[i]) 미리 풀어봤을떄 저는 이렇게 썻는데 이렇게 코딩하는것 보다 풀어주신거처럼 코딩하는게 더 좋은 코딩인가요?
- 해결됨파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
split() 함수 사용시 결과값이 잘못나오는 이유는 뭘까요?
.split('[') 함수 사용시 결과 값이 틀린 이유는 뭘까요?
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
선생님 수강기한이요.....
선생님 수강기한이요..... 제것은 기한이 있는데,,,, 지금 구매하는 사람들은 무제한이네요.... • 수강을 계속 듣고 싶은데요.... 또 결재를 해야 하나요?
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
크롤링 후 결과가 3줄씩 출력되는데요
선생님, 안녕하세요. 강의 정말 잘 듣고 있습니다. 그런데 Css selector 사용해서 크롤링하기2 / table 부분에서 코드를 강의와 동일하게 입력했는데 출력 결과물이 다르게 나와서요. 제가 무엇을 실수했는지 좀 알려주시겠어요? 감사합니다. 제가 작성한 코드 res=requests.get("https://davelee-fun.github.io/blog/crawl_html_css.html") soup=BeautifulSoup(res.content,'html.parser') items=soup.select('tr') for item in items: columns=item.select('td') row_str='' for column in columns: row_str +=column.get_text() print(row_str) 결과물 일정 일정커리큘럼 타이틀 일정커리큘럼 타이틀난이도 5.1 ~ 6.15 5.1 ~ 6.15나만의 엣지있는 블로그 사이트 만들기 (취미로 익히는 IT) 5.1 ~ 6.15나만의 엣지있는 블로그 사이트 만들기 (취미로 익히는 IT)초급 6.16 ~ 7.31 6.16 ~ 7.31파이썬과 데이터과학 첫걸음 (IT 기본기 익히기) 6.16 ~ 7.31파이썬과 데이터과학 첫걸음 (IT 기본기 익히기)중급
- 미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
동일하게 코딩 작성을 한 것으로 보이는데, 왜 숫자만큼 문자열이 나오지 않는지 궁금합니다.
(사진)