묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 기본편
네이버쇼핑 크롤링 과정 오류 질문
계속 이런 오류가 나오와요 크롬드라이브 해당 버젼에 맞게 설치했는데도 ㅠㅠ처음에 코딩 잘못입력한줄 알았는데 뭐가 문제인지 몇시간동안 반복하고있어서 글올렸습니다 도와주세요 ㅠㅠ
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
Error 관련 질문드립니다.
json 코드 입력했더니 이런 Error 가 뜨는데 왜 그런지 알수 있을까요..?
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
크롤링 시 다양한 태그들에 대한 대처
안녕하세요. 네이버 지도 크롤링 강의를 듣다 궁금한 점이 생겨 질문드립니다! 네이버 지도에서 [강남역 맛집, 홍대 술집, 이태원 카페] 와 같이 검색하여 나타나는 CSS선택자는 li.UEzoS.rTjJo 와 같이 선택하면 잘 선택이 되지만,[청담 미용실] 과 같이 선택하면 다른 CSS 선택자를 선택해야 합니다.이럴 경우 어떻게 대처를 하면 좋을지에 대해 질문을 남겨봅니다. 항상 강의 잘 듣고 있습니다. 감사합니다!
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
크로링 패턴에서 필요한 부분을 지정하는 방법
- 섹션 3 크롤링 패턴 관련 질문이 있습니다. 변수.find() 을 이용하여 원하는 부분을 찾는다고 했는데, 이때 find의 괄호 안에는 태그의 이름만 들어가는 게 맞나요?
-
미해결내 업무를 대신 할 파이썬(Python) 웹크롤링 & 자동화 (feat. 주식, 부동산 데이터 / 인스타그램)
버전 관련 질문
안녕하세요. 파이썬 및 판다스의 강의 촬영 날짜 기준 버전과 현재 버전이 다른데 문제 없이 강의를 따라갈 수 있을까요??
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
네이버 뉴스본문 가지고 오기도 되고 연예뉴스도 되는데 스포츠 뉴만 안되네요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.AttributeError: 'NoneType' object has no attribute 'text'이 오류가 계속 나오네요연예뉴스 복사한후 바로 코드를 다시 썼는데도 안되네요 ㅠㅠimport requests from bs4 import BeautifulSoup import time response = requests.get("https://search.naver.com/search.naver?sm=tab_sug.top&where=news&query=%EC%86%90%ED%9D%A5%EB%AF%BC&oquery=%EB%B8%94%EB%9E%99%ED%95%91%ED%81%AC&tqi=iK4yElprvmZss69Ig8Nssssss1w-042517&acq=thsgmd&acr=1&qdt=0") html = response.text soup = BeautifulSoup(html,'html.parser') articles = soup.select("div.info_group") for article in articles: links = article.select("a.info") if len(links) >= 2: url = links[1].attrs["href"] response = requests.get(url,headers={'User-agent':'Mozila/5.0'}) html = response.text soup = BeautifulSoup(html,'html.parser') # 만약 연예 뉴스라면 if "entertain" in response.url: title = soup.select_one(".end_tit") content = soup.select_one ("#articeBody") elif "storts" in response.url: title = soup.select_one("h4.title") content = soup.select_one ("#newsEndContents") # 본문 내용안애 불필요한 div삭제 divs = content.select("div") for div in divs: div.decompose() paragraphs = content.select("p") for p in paragraphs: p.decompose() else: title = soup.select_one("#artcleTitle") content = soup.select_one("#areicleBodyContents") print("============링크=========\n", url) print("============제목=========\n", title.text.strip()) print("============본문=========\n", content.text.strip()) time.sleep(0.3)
-
미해결실습으로 끝장내는 웹 크롤링과 웹 페이지 자동화 & 실전 활용
셀레니움 꺼짐 현상
from selenium import webdriver from selenium.webdriver.chrome.options import Options options = Options() options.add_experimental_option("detach", True) driver = webdriver.Chrome(options=options) url = "https://naver.com" driver.get(url) 위 처럼 작성을 했는데 계속 꺼집니다. 현재 최신 버전이며, 구글링해서 찾아봐도 원인을 모르겠네요 ㅠ 짐작이 가는거는 버전이 달라서인데 현재 제 크롬은 최선 버전으로 115.0.5790.102 입니다. 그래서 https://googlechromelabs.github.io/chrome-for-testing/ 이 사이트에서 win64로 받았는데 시도했는데 현재 안되는 상태입니다
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
섹션 4에 마지막 강의 14분 20초에 질문드립니다.
먼저 저는 'div.alertbar' 내에 문자로 된 것이 제가 추출하고 싶은 것 밖에 없어 그냥 이렇게 해도 되겠다 싶어 바로 이렇게 추출했습니다.#내 코드import requestsfrom bs4 import BeautifulSoupres = requests.get('https://davelee-fun.github.io/index.html')soup = BeautifulSoup(res.content,'html.parser')mydata = soup.select_one('div.alertbar')print(mydata.get_text().strip()) 그리고 다른 것을 시도해 보다 든 생각인데 import requestsfrom bs4 import BeautifulSoupres = requests.get('https://davelee-fun.github.io/index.html')soup = BeautifulSoup(res.content,'html.parser')mydata = soup.find('span',attrs={'class':'alertbar','style':'display: block'})print(mydata.get_text().strip()) 코드 블럭에서 처럼 이런식으로 속성:속성값으로 문제를 해결해보려 했으나 style이라는 속성은 css언어로 프로퍼티와 그 값이 있어 불가능해 보였습니다.. 혹시 가능한 방법이 있을까요?
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
섹션 4 마지막 강의 9분 30초
제가 짠 코드 인데 신박하게 짠 것 같아 기분이 좋아서 올렸습니다.import requestsfrom bs4 import BeautifulSoupres = requests.get('https://davelee-fun.github.io/index.html')soup = BeautifulSoup(res.content,'html.parser')mydata = soup.select('h4.card-text')i=0while i<4:print(mydata[i].get_text().strip())i+=1 분명 더 쉬운 방법이 있지만...# 내 코드2import requestsfrom bs4 import BeautifulSoupres = requests.get('https://davelee-fun.github.io/index.html')soup = BeautifulSoup(res.content,'html.parser')featured = soup.select('.featured-posts')for i in featured: y = i.select('h4.card-text') for x in y: print(x.get_text().strip()) 이렇게 두번째 코드는 강사님이랑 비슷하게 짜게 되었습니다.
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
섹션 4 마지막 강의 5분 40초 질문드립니다.
# 내 코드import requestsfrom bs4 import BeautifulSoupres = requests.get('https://davelee-fun.github.io/index.html')soup = BeautifulSoup(res.content,'html.parser')mydata = soup.find_all('a','nav-link') for i in mydata:print(i.get_text()) 저는 코드를 이렇게 작성해봤는데요 결과적으로 Blog와 About이 잘 나왔습니다. (저는 find_all 함수 사용했습니다.)그런데 mydata = soup.find_all('a','nav-link') 이 문장에서 굵게 표시된 부분을 a.nav-link로 적으면 아무것도 출력이 안되는데 왜 안되는지 궁금합니다. 태그명.class명 이렇게 하는 방법은 css selector에서만 허용되는 걸까요?코드 그대로 select일 때는 가능합니다.
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
섹션4 마지막에서 두번째 강의의 6분38초내용입니다.
단순히 이 코드에서 질문있습니다.select 와 find는 파싱직후 상태의 코드에서 제가 원하는 코드를 찾아주는 역할인데 처음 select('tr)에서 select가 사용되면서 items는 list형태가 되고 그 list형태인 items를 하나씩 뽑아내기 위해 for문을 사용했습니다.이때 items에서 for문을 돌려 뽑아진 item은 그 형태가 어떤지 모르겠으나 파싱 직후의 코드상태와 형태가 같기 때문에 select를 한번 더 사용할 수 있는 것 같은데 맞나요? 그리고 제가 생각한 flow는 tr tag를 기준으로 select를 해서 반환된 list가 items에 들어가고 그 items에서 for문에 들어간 처음 코드(list-->파싱 직후의 코드 형태)가 td tag를 기준으로 다시 select가 진행된다 판단했습니다. (두번째 select는 tr tag 안에 td tag가 아닌 다른 tag가 있을 수 있으므로 td tag만 뽑아내기 위해 해줬다 생각했습니다.)이 논리도 맞는지 궁금합니다.
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
질문이 두가지 있습니다.
CSS selector를 사용하여 크롤링을 하는 방법 강의에서 질문 있습니다.강의는 섹션 4에 3강이구요. 12분 15초부터 진행되는데 지금 강사님이 올려주신 깃허브 코드가 좀 바껴서 그런지 모르겠는데 li.course.paid라는 코드 자체가 없어요. 그래서 제가 (중급) - 자동으로 쿠팡파트너스 API 로 가져온 상품 정보, 네이버 블로그/트위터에 홍보하기 [412] 이 문장을 css selector로는 도저히 크롤링을 못하겠어서 find를 사용해서 크롤링을 시도해봤으나 코드가 안되네요. 제가 작성한 코드입니다.(find 함수 사용)import requestsfrom bs4 import BeautifulSoupres = requests.get('https://davelee-fun.github.io/blog/crawl_test')soup = BeautifulSoup(res.content,'html.parser')items = soup.find_all('a') print(items) 먼저 코드를 이렇게 작성해 list형태로 나오는걸 확인 후 import requestsfrom bs4 import BeautifulSoupres = requests.get('https://davelee-fun.github.io/blog/crawl_test')soup = BeautifulSoup(res.content,'html.parser')items = soup.find_all('a') for title in items: print(title[15].get_text())이렇게 진행해보았는데 안됩니다... 질문1, 제가 작성한 코드에 잘못된 점 있을까요?질문2. 지금 올라와있는 깃허브코드에서<a href="(중급)">https://www.fun-coding.org">(중급) - 자동으로 쿠팡파트너스 API 로 가져온 상품 정보, 네이버 블로그/트위터에 홍보하기 [412]</a>도저히 css selector로 해당 문장만 뽑아내는 방법이 생각이 안납니다.이것도 import requestsfrom bs4 import BeautifulSoupres = requests.get('https://davelee-fun.github.io/blog/crawl_test')soup = BeautifulSoup(res.content,'html.parser')items = soup.select('ul#dev_course_list>li.course') for title in items: print(title[8].get_text())이렇게 해보니까 안되네요.
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
섹션9 에서 5단계 질문입니다~
감탄에 감탄!!명강의 정말 감사합니다.취업준비로 독학하고 있는데 쌤 강의에서 많은 걸 배우고 명강의라는걸 항상 느낍니다. 벌써부터 다음 로드맵에 기대가 되고설레면서 재밌게 공부하고 있습니다. 아... 다름이 아니라섹션9에서 5단계: 타이틀별 댓글 가져와서 출력하기import requests from bs4 import BeautifulSoup res = requests.get('https://davelee-fun.github.io/trial/board/news.html') soup = BeautifulSoup(res.content, 'html.parser') items = soup.select('div.list_title') i = 0 for item in items[:5]: title = item.select_one('span.subject_fixed') reply_count = item.select_one('span.rSymph05') link = item.select_one('a.list_subject') if title != None: i += 1 print(i, title.get_text().strip(), reply_count.get_text()) res_title = requests.get('https://davelee-fun.github.io/trial/board/'+link['href']) soup_title = BeautifulSoup(res_title.content, 'html.parser') replies = soup_title.select('div.comment_content') for reply in replies: print('ㄴ', reply.get_text().strip().replace("\n", "").replace("\t", ""))위는 제가 입력한 부분인데 출력값이 쌤과 다르게 3번째 게시글 댓글까지 나와서요.아무리 봐도 어디가 다른지 몰라서요.. 한번 봐주시고 피드백 부탁드릴게요 1 KT, MS 투인원 랩톱 '서피스 프로9 5G' 단독 출시 1 ㄴ 국내통신사 + 5G 두개의 단어만 합쳐지면 왜 다 같지않아 보일까용?? 2 NIO, 차량가격 인하 및 배터리스왑 옵션으로 분리 2 ㄴ 니로가 아니고 니오군용 허허허 배터리스왑은 충전보다 좋을꺼 같아요. 자동차를 스마트폰처럼 방수때문에 배터리 교체형을 버리고 일체형으로 하면충전시간이 너무 긴거같아요. ㄴ 니오 전기차 국내에서도 한대 봤습니다. 모카 영상에 나왔던 이 차량이었어요.어떤 아주머니께서 운전하시던데 홍보용인지개인차량인지...신기하더라고요. ㅎㅎ 3 삼성전자, 게이밍 모니터 ‘오디세이 OLED G9’ 출시 6 ㄴ M9은. . . .ㅜ.ㅜ ㄴ 삼성 공식 보도자료인데도 테어링 현상을 티어링이라고 하고 있네요..아수스 노트북같은데 상세페이지에서도 그러던데..하.. ㄴ 이 정도면 기사를 가장한 광고 아닌가요?? ㄴ @미드나잇님 삼성전자 뉴스룸이면보도자료죠. 거기서 광고를 하든말든 상관없어보이구요. ㄴ @미드나잇님공식보도자료입니다.https://news.samsung.com/kr/%EC%82%BC%EC%84%B1%EC%A0%84%EC%9E%90-%EA%B2%8C%EC%9D%B4%EB%B0%8D-%EB%AA%A8%EB%8B%88%ED%84%B0-%EC%98%A4%EB%94%94%EC%84%B8%EC%9D%B4-oled-g9-%EC%B6%9C%EC%8B%9C하단에출처로된 기재된 링크로 들어가시면 나와요 https://news.samsung.com/kr/%EC%9D%B8%ED%8F%AC%EA%B7%B8%EB%9E%98%ED%94%BD-%EB%8D%94%EC%9A%B1-%EA%B0%95%EB%A0%A5%ED%95%B4%EC%A7%84-%EC%98%A4%EB%94%94%EC%84%B8%EC%9D%B4-oled-%EA%B2%8C%EC%9D%B4%EB%B0%8D-%EB%AA%A8인포그래픽은이어서 추가한거구요. ㄴ 220만원 진짜 싸게나왔네요 ㄷㄷ못해도 300만은 넘을 줄 알았는데사용기들 보고 반년뒤쯤에 사야겠네요
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
vs로 코드돌려도 상관없을까요?
안녕하세요.혹시 주피터노트북을 사용하지 않고, 일반 코드처럼 코딩후 실행하여도 괜탆을까요?현재 현업에서도 주피터노트북을 사용하는지도 궁금합니다!
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
패턴으로 실습하며 익히기: HTML/CSS 이해를 바탕으로 크롤링하기 9분47초 질문드립니다.
섹션3 마지막강의의 9분 47초 내용입니다.위 사진은 제가 소스 코드를 땄을 때 사진이고 저는 div tag에 class가 두개가 아닌 하나로 나타나있습니다. 왜 같은 링크인데 소스코드가 달라진지 모르겠습니다.그리고 저렇게 속성이 여러개일때는 find함수 안에 ('div',attrs={'class':'layer_body' , 'data-translation':'true'})라고 작성하면 될까요? - 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다)- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결일잘하는 마케터, MD에게 꼭 필요한 파이썬 데이터 분석
16강 데이터시각화 코드 오류
안녕하세요!16강 <쉽게 알아보는 그래프 데이터 정규화 - 2개 요인 상관관계 분석> 수업을 들으며 따라 해보던 중,가장 마지막에 설명해주신 코드를 실행시키면 오류메시지가 뜹니다. 원인을 알 수 없어 문의 드립니다.제가 작성한 콜랩노트 입력코드plt.figure(figsize=(20,10)) plt.plot(df_covid19_scaled_to_dataframe[0], color='b') plt.plot(df_customer_prices_scaled_to_dataframe[0], color='r') plt.legend(['confirmed covid-19','customer prices after covid-19'])에러메시지--------------------------------------------------------------------------- NameError Traceback (most recent call last) <ipython-input-17-813ac38c1cb0> in <cell line: 2>() 1 plt.figure(figsize=(20,10)) ----> 2 plt.plot(df_covid19_scaled_to_dataframe[0], color='b') 3 plt.plot(df_customer_prices_scaled_to_dataframe[0], color='r') 4 plt.legend(['confirmed covid-19','customer prices after covid-19']) NameError: name 'df_covid19_scaled_to_dataframe' is not defined <Figure size 2000x1000 with 0 Axes>
-
미해결일잘하는 마케터, MD에게 꼭 필요한 파이썬 데이터 분석
13강 시각화함수 결과 그래프에 관한 문의
선생님 안녕하세요.직접 크롤링한 리뷰데이터의 텍스트로 시각화 실습을 해보니 신기하기도 하고, 앞으로 잘 활용하고 싶다는 생각이 드는데요.결과 그래프를 어떻게 해석하는 것이 좋을지 약간의 가이드를 여쭙고 싶습니다 :)키워드 크기 : 사용 빈도수에 따라 키워드 크기가 결정될 것 같은데, 맞을까요?x,y축 해석 : x축과 y축이 각각 무엇을 의미하는지 궁금합니다.색상도 어떤 특정한 의미가 있을까요? *.*너무 흥미로워서 질문을 드리게 되네요. 감사합니다. (예) 뷰티디바이스 리뷰 크롤링
-
미해결일잘하는 마케터, MD에게 꼭 필요한 파이썬 데이터 분석
9강 코드 입력 시 에러
안녕하세요!9강 (네이버쇼핑) 카테고리별 인기검색어 크롤링 강의자료 내 공유해주신 코드 정보를 바탕으로 제 연습노트에서 따라 작성해보았는데요.rank_info_list[0].get_text().find("위") 코드 실행하면서부터 오류 메시지가 뜨는데, 해결 방법 있을지 문의 드립니다. *입력코드 rank_info_list[0].get_text().find("위")*에러 메시지--------------------------------------------------------------------------- IndexError Traceback (most recent call last) <ipython-input-29-a773d15d80f4> in <cell line: 2>() 1 # rank_info_list[0].get_text().find("상품펼치기") ----> 2 rank_info_list[0].get_text().find("위") IndexError: list index out of range 감사합니다:)
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 기본편
html에 a id가 나오지 않습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨일잘하는 마케터, MD에게 꼭 필요한 파이썬 데이터 분석
소스코드 실행오류
안녕하세요 확인해보니 강의자료에 붙어있는 소스코드 링크는 옛날 소스코드가 들어가 있어서 업데이트가 필요할 거 같습니다 그리고 전달 주신 소스 링크 안에서는 코드가 잘 돌아가는데 저는 두번째 섹션 코드를 돌리면 TypeError Traceback (most recent call last) <ipython-input-25-e1d24ca4db7f> in <cell line: 48>() 46 options.add_argument('--headless') 47 options.add_argument('--no-sandbox') ---> 48 driver = webdriver.Chrome(service=service, options=options) TypeError: WebDriver.__init__() got an unexpected keyword argument 'service'이런 오류가 나옵니다 드라이버 업데이트를 해서 그런걸까요??