[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요. 강의 열심히 잘 듣고 있습니다.! 항상 강의가 끝나고 제 스스로 학습한 내용을 복습하는데요! html 태그와 select를 활용하여서 크롤링을 시도하고 있었습니다. 아래 이미지와 같이 초록색으로 표시한 부분의 태그와 클래스 관계를 이용해서 html 정보를 프린트 해봤는데 [] 이렇게 아무것도 뜨지 않습니다.. 분명 태그간 상하과계를 제대로 적었는데 말이죠... 신기한건 초록색 부분을 없애고 ul > li.-qHwcFXhj0 이렇게 입력한 뒤 select을 하면 데이터가 뜬다는 것입니다 ㅜㅠ 분명 초록색으로 표시한 부분도 있는데 왜 초록색 부분을 추가해서 select 하면 데이터가 뜨지 않는 걸까요?
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
주피터 노트북에서 이미지를 삽입하려고 아래와 같이 마크업다운에 코드를 작성하고 실행시켜 봤는데 계속 이미지 아이콘만 뜹니다ㅠㅜ 업로드 해주신 주피터 파일 수업자료에 이미지가 있는 경우도 저는 아이콘만 표시 되는데 왜 이러는 걸까요...? 답변 부탁드립니다. 감사합니다 :)
안녕하세요! 네이버 이미지 크롤링 과제 진행하면서 생긴 의문점입니다. 저같은 경우에는 강의와는 다르게 네이버 메인페이지를 열고, 검색어를 입력한 다음, 이미지탭을 클릭하는 것으로 구현하고자 하였는데요, 여기서 '이미지탭' 클릭을 css 선택자로 어떻게 표현하면 좋을지 잘 모르겠어서 질문 드립니다!!! 아래 태그 두개는 각각 이미지, 뉴스탭에 해당하는 a태그인데요, 두 태그에는 아이디나 클래스 등이 나와있지 않아 어떻게 이미지태그만을 구분하여 선택하면 좋을지 감이 잘 안잡힙니다...!! 어떻게하면 좋을까요? <a role="tab" href="?where=image&sm=tab_jum&query=%EC%95%84%EC%9D%B4%EC%9C%A0" onclick="return goOtherCR(this,'a=tab*i.jmp&r=2&i=&u='+urlencode(this.href));" class="tab" aria-selected="false">이미지</a> <a role="tab" href="?where=news&sm=tab_jum&query=%EC%95%84%EC%9D%B4%EC%9C%A0" onclick="return goOtherCR(this,'a=tab*n.jmp&r=3&i=&u='+urlencode(this.href));" class="tab" aria-selected="false">뉴스</a> 찾아본 결과, 개발자 모드 내에서 이미지 탭에 해당하는 태그를 우클릭하여 copy > copy selector 기능을 활용하여 #lnb > div.lnb_group > div > ul > li:nth-child(2) > a 를 복붙하면 어찌어찌 과제는 수행 완료 할 수 있는데요!!! copy selector기능을 사용하지 않고 배운대로 해보고자 한다면...? 강사님이라면 어떻게 선택하실지 궁금하여 이렇게 질문작성하게 되었습니다. 감사합니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요, 강의 정말 잘 들었습니다. 네이버 증권에서 다른 수치를 불러오는 중 막혔습니다. 현재가, 종목명, 종목코드 같은 경우에는 알려주신 것을 응용하면 돼서 전혀 문제가 없었습니다. 하지만 '52주 최고' 수치를 불러들이지 못하고 있습니다. 그 수치만을 위한 class나 id... 별명? 그런 것이 없습니다. https://finance.naver.com/item/sise.naver?code=005930 이 부분입니다. <span class = "tah p11">이 있지만, 다른 수치에도 같은 tah p11 class가 있고, 그 위의 <td class = "num">도 똑같습니다. 다른 질답에서 보면 copy를 사용하라고 하셨는데 그러면 다른 엉뚱한 수치가 떠요... https://m.stock.naver.com/index.html#/worldstock/stock/V/total 반면 미국증시의 경우에는 더 처참한데 현재가도 이름도 프린트해보면 NONE이라고 뜹니다. 왜 이러는걸까요... 야후 파이낸스로도 셀레늄이 잘 안돼서 네이버로 하고 싶었는데 야후 파이낸스로 해보는 것이 나을까요? tickers = ['APPL.O', 'GOOGL.O'] for ticker in tickers: url = f"https://m.stock.naver.com/index.html#/worldstock/stock/{ticker}/total" response = requests.get(url) html = response.text soup = BeautifulSoup(html, 'html.parser') price = soup.select_one("#content > div.GraphMain_mainGraph__3npcJ.UNCHANGED > div.GraphMain_frameGraph__19k0w > div.GraphMain_stockInfo__2-Uf6 > strong") name = soup.select_one("#content > div.GraphMain_mainGraph__3npcJ.UNCHANGED > div.GraphMain_frameGraph__19k0w > div.GraphMain_stockInfo__2-Uf6 > span.GraphMain_name__3XazJ") print(name, price) 도와주세요!!
안녕하세요. 귀중한 조언 감사드립니다. 파이썬 이제 막 기초를 끝낸 파이썬 초보입니다. 책과 강의로 파이썬 기초서적을 3회독 점도 하였고, 별도로, pandas, numpy, matplotlib, 셀레니움 라이브러리를 공부했습니다. (질문) 저는 전문 프로그래머나 개발자는 아니고, 별도의 사업과 투자를 하는 사람입니다. 제 사업이나 주식, 부동산 자료분석에 활용하고자 파이썬이라는 도구를 활용하려는 것입니다. ● 주로, 방대한 인터넷 세계에서 제가 원하는 자료만을 크롤링해 올수 있는 방법으로 활용 ● 그 크롤링한 자료들을 a. 제가 지정한 폴더에 한번에 다운로드 받거나 (예컨대, 이미지 파일들을 폴더에 대량으로 다운받거나) b. 제가 원하는 크롤링한 내용들(글자 내용 등)을 엑셀에다가 일목요연하게 정리되게 출력해주는 식으로 활용도 해 나가고.. (예컨대, 네이버 연관검색어를 쫙 모아서 엑셀에다가 정리해준다던지) ● 그렇게 크롤링되어 엑셀로 재정리된 그 자료를 데이터 분석도 하고, 그래프도 만들고, 통계도 만들고 아울러 ● 업무 자동화도 만들어나가는 식으로 파이썬을 활용해나갈 것을 염두에 두고 있습니다. =================================== 결국, 크롤링, 엑셀연동, 데이터분석, 업무자동화용으로 파이썬을 활용하고자 합니다. ■ 파이썬 기초에 + 판다스, 셀레니움, 넘파이, matplotlib를 공부한 상태인데 크롤링, 엑셀연동, 데이터분석, 업무자동화용으로 파이썬을 활용하려면 여기에, 어떤어떤 라이브러리(모듈)을 추가로 공부해나가야 하는지, 여기에 자주 사용하는 라이브러리(모듈)은 무엇무엇이 있는지 질문드립니다. 귀중한 답변 정말 감사드립니다. 오늘도 좋은 하루 되세요 ^^
아래 화면처럼 했는대 데이터를 가져오는 건 1,10,20,30 여기서 어떠한 부분이 잘못된것일까요? import requests from bs4 import BeautifulSoup import pyautogui keyword = pyautogui . prompt ( '검색어를 입력하세요' ) lastpage = pyautogui . prompt ( '마지막 페이지 번호' ) pageNum = 1 for i in range ( 1 , int ( lastpage ) * 10 , 10 ) : print ( f " { pageNum } 페이지 ==============================" ) response = requests . get ( f "https://search.naver.com/search.naver?sm=tab_hty.top&where=news&query= { keyword } &start= { lastpage } " ) html = response . text soup = BeautifulSoup ( html , 'html.parser' ) links = soup . select ( '.news_tit' ) for link in links : title = link . text url = link . attrs [ 'href' ] print ( title , url ) pageNum = pageNum + 1
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요~ 파이썬입문과 크롤링기초 부트캠프 강좌의 크롤링을 위한 지식: 정부 제공 공공데이터 Open API 사용법 에서 09:07~ 부분처럼 Body 결과가 뜨지 않아 질문드려요. 여기까지가 공공데이터 홈페이지의 내용이고, 노란색으로 표시한 부분을 아래와 같이 postman에 넣었습니다. NORMAL_CODE 로 뜨긴 하지만 선생님께서 강의 예시로 보여주신 것처럼 sidoName , searchCondition 등의 항목을 볼 수 있는 데이터가 아니라 그런건지, 그렇다면 다른 데이터를 활용해보는 게 나을지? 아니면 URL을 잘못 만든 것인지 피드백 부탁드려요~ 감사합니다.
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
안녕하세요 배운 내용을 토대로 응용을 해보고 있는데요, 네이버 뉴스의 내용을 크롤링 하고 싶어서 크롤링한 걸 재크롤링 하는 방법을 써봤습니다. 그런데 href 추출까지는 잘 되는데요, (print로 확인 해보면 잘 크롤링 됨) 그걸 다시 파싱하는 코드를 넣으니까 에러가 납니다. 여기서 뭘 어떻게 건드려야 할지 모르겠어요ㅠ import requests from bs4 import BeautifulSoup keywords = ["인공지능"] for keyword in keywords: url = "https://search.naver.com/search.naver?where=news&ie=utf8&sm=nws_hty&query={0}".format(keyword) #기사 링크 추출 search_url = requests.get(url) soup = BeautifulSoup(search_url.text, "lxml") urls = soup.select("a.info:nth-of-type(2)") for burl in urls: # print(burl["href"]) #본문 url 다시 파싱 res_info = requests.get(burl["href"]) soup_info = BeautifulSoup(res_info.content, "lxml") title = soup_info.select("h3#articleTitle") print(title)
강의와 관련있는 질문 을 남겨주세요. • 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등) • 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색 을 해주세요. (중복 질문을 자제해주세요.) • 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’ 를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달 에도 요령이 필요합니다. • 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요. • 강의실 페이지 (/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다. • 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재 해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드 를 남겨주세요! 구체적인 질문 일수록 명확한 답을 받을 수 있어요. • 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요. • 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요 . • 정확한 질문 내용과 함께 코드 를 적어주시거나, 캡쳐 이미지 를 첨부하면 더욱 좋습니다. 기본적인 예의 를 지켜주세요. • 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용 은 스팸 처리 등 제재를 가할 수 있습니다. 안녕하세요 데이터공방님, 친절하고 유익한 강의 잘 듣고 있습니다. 감사합니다. 인스타그램 크롤링이 도움이 많이 되었는데, 혹시 유튜브 크롤링 강의는 오픈될 예정에 있는지 궁금합니다. 답변주시면 감사하겠습니다.