묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
[진짜 쉬운 책 추천] 크롤링부터 너무 어렵네여
정말 쉽게 볼 책 추천해주실 수 있나요?? 강의 듣고 책으로도 보면 조금 더 이해가 쉬울까 하구요
-
미해결
puppeteer 네이버 로그인
안녕하세요. 제가 프로그램을 만들고 있습니다.네이버 로그인을 puppeteer로 자동화를 하려고 하고있습니다.하지만 네이버에서 매크로 프로그램으로 로그인을 하는것을 막고 있습니다 ㅠㅠ로그인을 자동화 시키려하면 캡챠로 넘어가서 다른 방법이 있는지 알아보는 와중복사 붙여넣기 기능을 하면 된다고 구글링을 통해 봤습니다.하지만 복사 붙여기능또한 네이버 로그인에서는 안되게 막아놓은것 같습니다.. 혹시 네이버 로그인 자동화를 구현하신 분 있는 멋진분을 찾습니당.
-
미해결
파이썬 이미지 크롤링이 안돼요..
url = "https://image.dcinside.com/viewimage.php?id=&no=24b0d769e1d32ca73de985fa11d02831f8aadc88aabcff47e8021605d37bf1436ebb78a575eb9e18042afbf9848bfd403905acb77b9ac250540b76e4781bf2" # 헤더 추가 headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36', } # 이미지 다운로드 response = requests.get(url, headers=headers) print(response.content) img_data = BytesIO(response.content) # BytesIO 객체에서 이미지 열기 img = Image.open(img_data) # 이미지 저장 (optional) img.save("downloaded_image.jpg") response.content를 출력하면 b'' 이 값을 출력하게 되는데 원인을 잘 모르겠습니다.
-
미해결
HTML 에서 a 태그의 href 만 뽑아오기
파이썬으로 왓차피디아 사이트를 크롤링 하려고 하는데요.requests 랑 Beautifulsoup 모듈을 사용하고 있습니다.{영화 제목: ~~~,제작연도 : ~~~,링크: ~~~}이렇게 만들고 싶습니다. 근데 링크를 뽑아오는 데서 문제를 겪고 있습니다. 보시다시피 아래에서 두 번째 줄에서 리스트 컴프리헨션을 활용했는데요.soup_links 에 데이터가 비어서 나옵니다.웹에서 개발자 도구로 확인했는데도 저렇게 나오는데 혹시 고수님들 어떻게 해야 링크를 크롤링 할 수 있을까요?url_watcha = "https://pedia.watcha.com/ko-KR" req_watcha = requests.get(url_watcha) html = req_watcha.text soup = BeautifulSoup(html, "lxml") soup_titles = soup.select("div.css-1ntmtyn-ContentTitle-makeTypeFunction-handleHorizontalUlRender") soup_year_countries = soup.select("div.css-zb5qbk-StyledContentYearAndNation-createMediaQuery-makePediaTypeFunction") soup_links = soup.select("li.css-1ofozqs.ei3ci1h10 > a") titles = [t.get_text(strip=True) for t in soup_titles[:10]] year_countries = [y.get_text(strip=True) for y in soup_year_countries[:10]] links = [l["href"] for l in soup_links] time.sleep(1)
-
미해결
왓챠피디아 리뷰 크롤링 관련 질문입니다
왓챠피디아에 올라가 있는 넷플릭스 드라마 리뷰들을 파이썬으로 웹 크롤링 해보고 싶어서 https://github.com/Stan7s/IMDb-Review-Crawler/blob/master/IMDb-Review-Crawler.py의 imdb 크롤링 방식을 참고했습니다.그런데 IMDB에선 잘 되던 것이, 왓챠피디아 쪽은 리뷰가 크롤링 되지 않습니다.어떻게 하면 해결할 수 있을까요? #수집하고 싶은 영화의 user riviews 페이지 url 붙여넣기 url = 'https://pedia.watcha.com/ko-KR/contents/tRzLggZ/comments' #수집하고 싶은 영화 리뷰 수 지정 MAX_CNT = 150 cnt = 0 print("url = ", url) res = requests.get(url) res.encoding = 'utf-8' soup = BeautifulSoup(res.text, "lxml") load_more = soup.select(".load-more-data") flag = True if len(load_more): ajaxurl = load_more[0]['data-ajaxurl'] base_url = base_url + ajaxurl + "?ref_=undefined&paginationKey=" key = load_more[0]['data-key'] else: flag = False while flag: url = base_url + key print("url = ", url) res = requests.get(url) res.encoding = 'utf-8' soup = BeautifulSoup(res.text, "lxml") for item in soup.select(".lister-item-content"): rating = item.select("span.rating-other-user-rating > span") if len(rating) == 2: rating = rating[0].text review = item.select(".text")[0].text pn = rating_transfer(int(rating)) review_list.append(review) rating_list.append(pn) cnt = cnt + 1 else: rating = "" review = item.select(".text")[0].text
-
미해결파이썬 무료 강의 (활용편3) - 웹 스크래핑 (5시간)
URL 문제
URL에 있는 Page 정보를 이용해서 여러 Page에 걸쳐진 정보를 스크래핑 하는 것으로 알고 있습니다. 그런데 일부 사이트에서는 Page를 옮겨도 URL이 전혀 변경되지 않고, 고정으로 있었습니다. 이런 경우엔 어떻게 해결하나요? 개발자 도구에 페이지 정보가 들어있는 URL 정보가 따로 있는지요?
-
미해결
파이썬 크롤링 오류 문의드립니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 파이썬 크롤링 하고 있는데 오류가 안나면 보여지는 화면을 모두 끌어오고 오류가 나면 > AttributeError: ResultSet object has no attribute 'find' 이렇게 뜹니다 import requestsimport refrom bs4 import BeautifulSoupurl = "https://unipass.customs.go.kr/csp/index.do"headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/102.0.0.0 Safari/537.36"}res = requests.get(url, headers = headers)res.raise_for_status()soup = BeautifulSoup(res.text, "lxml")print(res.text)#soup.find("div",{"id"="MYC0401004Q_table1"}), attrs={"class":"gird_list"}.find("tbody").find_all("tr")data_row = soup.find("table",{"id":"MYC0401004Q_table1"}).find("tbody").find_all("tr")for row in data_row: columns = row.find_all("td") data = [column.get_text() for column in columns] print(data) 분명 데이터가 있는데 제가 태그를 잘못 가져온 걸 까요? 몇번을 고치고 다른 방법으로, 태그를 가져왔었는데 어떻게 수정해야 표를 가져올 수 있을까요...
-
미해결
다음뉴스 댓글 크롤링 도움 부탁 드립니다. On/Off 버튼 클릭이 안되어요 ㅠ
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 잔재미코딩님의 셀레니움&스크래피 강좌를 듣고 있는데, 해당 게시물에 질문이 안되네요..?ㅠ 오래되서 그런가,, 그래서 전체 게시물에 질문 한 번 드려봅니다. 강좌는 이미 펼쳐져있는 댓글 창에서 '더보기'를 누르고 추가적으로 크롤링을 하는 코드를 알려주었는데요, 이후에 다음에서 On/Off버튼이 생겨 댓글이 기본적으로 닫혀있어서 아래 크롤링을 수행하려면 On/Off 버튼도 한 번 눌러줘야 하는 상황입니다. 도움 주실 수 있으신 분 있으시다면,, 한 번만 부탁 드리겠습니다. 안녕하세요? 기존 강좌 제작 시점과 달리 댓글은 기본적으로 닫혀 있고 on/off 버튼을 눌러야 댓글이 보이게 됩니다. 강의 활용해서 on_button 변수를 만들고, 이를 클릭할 수 있도록 한 번 꾸며 봤는데요, 태그도 바꿔보고, 함수도 바꿔보고, 다양한 방법으로 시도를 해봤는데, On/Off 버튼을 누르는 것을 못합니다 ㅠ 태그도 div.cmt_count_box까지만 해보고, button까지도 해보고, span까지도 해보고, 다양한 방법으로 시도 해봤습니다. on_button = driver.find_element_by_css_selector('alex-area > div > div > div > div.cmt_count_box > button') webdriver.ActionChains(driver).click(on_button).perform() 아무래도 눈으로 보고 직접 체득해야 실력이 Up되지 않을까 해서 강의만 보고 넘어가기 보다는, 한 번 직접 구현해보고 싶어 문의 드리고자 합니다. 기초 강의 때에는 조금씩 페이지가 바뀌는 부분도 쉽게 해결이 되었는데, 나름 중급이라 조금 어렵네요 ㅎㅎ 도움 부탁 드려 보겠습니다! [작성코드] from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.common.exceptions import TimeoutException import time chromedriver = '/usr/local/chromedriver' driver = webdriver.Chrome(chromedriver) driver.get('https://news.v.daum.net/v/20190709165157301?d=y') #댓글창 On/Off 버튼 누르기 - 게속 안됨 ㅠ element = WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.CSS_SELECTOR, 'alex-area > div > div > div > div.cmt_count_box > button'))) on_button = driver.find_element_by_css_selector('alex-area > div > div > div > div.cmt_count_box > button') webdriver.ActionChains(driver).click(on_button).perform() #더보기 누르기 로직 만들기 loop, count = True, 0 while loop and count < 10: try: element = WebDriverWait(driver, 5).until( EC.presence_of_element_located((By.CSS_SELECTOR, 'alex-area > div > div > div > div.cmt_box > div.alex_more > button')) ) more_button = driver.find_element_by_css_selector('alex-area > div > div > div > div.cmt_box > div.alex_more > button') webdriver.ActionChains(driver).click(more_button).perform() count = count + 1 #count += 1로도 가능 time.sleep(2.0) except TimeoutException : loop = False #크롤링하기 comment_box = driver.find_element_by_css_selector('alex-area > div > div > div > div.cmt_box > ul.list_comment') comment_list = comment_box.find_elements_by_tag_name('li') #각각 댓글은 li가 감싸고 있음 for num, comment_item in enumerate(comment_list) : print("[",+str(num+1),+"]", comment_item.find_element_by_css_selector('div p').text) driver.quit() #alex-area > div > div > div > div.cmt_count_box > button > span <- on/off #alex-area > div > div > div > div.cmt_box > div.alex_more > button > span:nth-child(1) <- 더보기버튼 #alex-area > div > div > div > div.cmt_box > ul.list_comment <- 댓글리스트
-
해결됨일잘하는 마케터, MD에게 꼭 필요한 파이썬 데이터 분석
쇼핑 크롤링 응용 질문 드립니다.
선생님께서 수업에서 보여주신 여러가지 크롤링을 응용해서 네이버 많이 구매하는 쇼핑 카테고리 크롤링 코드를 짜보았습니다. 그런데 해당 순위 100개까지 있는데, 현재 순위 15순위까지만 해서 나옵니다. 16위부터는 소스 자체에서 변화되는 것이 있을수 있는데 저로서는 한계네요 ;;; 리뷰 다음 페이지것까지 가져오기처럼 이것도 방법이 있을 것 같은데 혹시 알려주실 수 있을까요
-
미해결
동적 크롤링에 관련하여 질문 드립니다.
안녕하세요. 이번에 크롤링 강의를 듣고 있는 수강생 입니다. 현재 네이버 지도에서 위치를 검색 후 클릭 -> 클릭-> 한 후 네이버의 한줄평 리뷰 를 크롤링 하는 자체 프로젝트를 진행중입니다. 이때, 검색창을 찾고, click() 을 이용해 Crawling 을 위한 (3) 페이지 로딩까지는 성공하였으나, 옆의 화면에서 click 및 어떠한 활동도 할 수 없는 상태입니다. 제 소스 코드는 이렇습니다. for l in list_loc: ele = l.split((','))[:-1] comp = unicodedata.normalize('NFC',ele[-1][-1]) if comp != dong and comp != eup and comp != myun and comp != lee and comp != ga :continue address = ele[0]+' '+ele[1]+ ' '+ele[2]+' 식당' add_quote = urllib.parse.quote(address) driver.get(url) sleep(1) key_search = address time_wait(2,'div.input_box > input.input_search') search = driver.find_element(By.CSS_SELECTOR,'div.input_box > input.input_search') sleep(1) search.send_keys(key_search) search.send_keys(Keys.ENTER) res = driver.page_source soup = BeautifulSoup(res, 'html.parser') # html 파싱하여 가져온다 sleep(1) def switch_frame(frame): driver.switch_to.default_content() # frame 초기화 driver.switch_to.frame(frame) # frame 변경 res soup def page_down(num): body = driver.find_element(By.CSS_SELECTOR,'body') body.click() for i in range(num): body.send_keys(Keys.PAGE_DOWN) switch_frame('searchIframe') page_down(3) sleep(1) # 매장 리스트 store_list = driver.find_elements(By.CSS_SELECTOR, '._1EKsQ') next_btn = driver.find_elements(By.CSS_SELECTOR, '._2ky45 > a') print(len(next_btn), '....') for btn in range(len(next_btn))[1:]: # next_btn[0] = 이전 페이지 버튼, 1,2 : 광고/ 0,1,2 무시 -> [3]부터 시작 print(next_btn[btn].text, 'adsadsa') store_list print(store_list[0].text) store_page = driver.find_elements(By.CSS_SELECTOR, '.OXiLu') for data in range(len(store_list)): # 매장 리스트 만큼 #print(data, len(store_page), store_page[data].text, '00') store_page[data].click() sleep(2) try: driver.switch_to.default_content() print('switch test1') sleep(0.5) driver.switch_to.frame('entryIframe') sleep(4) print('switch test2') reviews = driver.find_elements(By.CSS_SELECTOR,'_2RG_o') except:pass 여기서, (3) 의 페이지가 네이버 지도의 entryIframe 안에 있는 것을 알고, switch frame 을 시도했습니다만, 무슨 락이 걸려 있는것인지 저 entryIframe 이 전혀 검색이 되지 않습니다. 하지만 소스 페이지 검색 결과, entryIframe 는 분명이 존재합니다. 제가 무엇을 빼먹은 것인지, 무엇을 잘못 하고 있는 것인지 알고 싶습니다. 감사합니다.
-
미해결
네이버 영어사전 크롤링
import requests from bs4 import BeautifulSoup print("검색하려는 영어 단어를 입력하세요.") word = input() url = "https://en.dict.naver.com/#/search?query=what" response = requests.get(url) response.raise_for_status() soup = BeautifulSoup(response.text, "html.parser") title = soup.find_all('ul',class_='mean_list') print(title) 이렇게 네이버 영어사전 크롤링 시도했는데 왜 안될까요ㅣ..
-
미해결일잘하는 마케터, MD에게 꼭 필요한 파이썬 데이터 분석
5강 웹크롤링
- 5강 7분경에 네이버 쇼핑몰 크롤링 하면 리뷰가 나오는데 실제 카피해서 돌려보면 페이지 1 2 3 4 이렇게만 나오는건 왜 그런건가요? 강의대로 리뷰 내용을 보려면 어떻게 해야 하나요 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결[2024 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
네이버지도 검색어입력중 태그 못찾는 문제
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요! 강의 잘 듣고있습니다. 다름아니라 네이버지도 크롤링 검색어 입력구현 과정중 검색박스를 찾는 과정에서 생긴 질문인데요, 강의자분께서 하신대로 클래스 선택자(Input.input_serach)를 이용하면 잘 찾아지나, 똑같은 코드에 Id선택자로만 변경 할 시 검색어 입력이 제대로 구현되질 않습니다. 사실 클래스와 아이디가 모두 있을때, 아이디는 보통 고유한 값이기에 아이디를 쓰는게 좋다!라고 배워온 기억이 있어서 아이디로 시도했지 애초에 클래스로는 할 생각을 못했구요.... 크롬 개발자모드의 copy selcector 기능도 '#input_search1645599001993' 의 아이디로 선택하길래 오랫동안 고민하다가 안돼서 강의 들어서 클래스로 하면 되긴 하는구나,,,, 를 확인은 했습니다만 왜 ID선택자로는 안되고 클래스 선택자로 밖에 구현이 안되는지 궁금합니다! 아래는 강의듣고 복기한 코드에서 클래스 선택자를 아이디 선택자로만 바꾼 코드입니다. 감사합니다. from selenium import webdriver from selenium.webdriver.common.keys import Keys import time browser = webdriver.Chrome('./chromedriver') browser.get('https://map.naver.com/v5/') browser.implicitly_wait(10) #browser.maximize_window() # 검색창 입력 #search = browser.find_element_by_css_selector("input.input_search") search = browser.find_element_by_css_selector("input#input_search1645599001993") search.click() # 클릭 굳이 없어도 실행된다 time.sleep(1) search.send_keys('강남역 맛집') time.sleep(1) search.send_keys(Keys.ENTER) time.sleep(2)
-
미해결[2024 개정판] 이것이 진짜 크롤링이다 - 기본편
준비운동 - (크롤링을 위한 정말 쉬운 HTML - 뉴스 해킹) 내용 중 질문
안녕하세요! 강의 내용 중 궁금한 것이 있어 질문드립니다. html 내용을 수정해 기사 제목을 수정하는 실습을 문제 없이 진행했는데, 사진도 교체해보고 싶어서 시도하니 안되네요. 보통 마크다운으로 작성 시 사진에 대한 주소를 해당 태그 안에 넣으면 될 것 같은데, 원래 안되는건지, 가능하게 하는 방법이 있는지 궁금합니다.
-
미해결[2024 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
네이버 지도 상세주소 크롤링
현재 네이버 지도 크롤링 시도 중인데, 클릭하지 않으면 나오지 않는 가게의 상세 주소까지 크롤링하고 싶습니다 첫 번째 방법으로는 하나씩 누르면서 크롤링하는 방법과 두 번째 방법으로 개발자도구에 script 에 있는 가게 code를 따서, url에 넣어서 결합한 뒤 새로 코드를 짜서 반복문으로 돌려서 상세 주소를 가져오는 방법을 생각 중입니다 제 생각에는 2번이 수월할 것 같아 하려고하는데, 아래와 같이 script라는 것 아래에 json 형태로 저장되어 있는 것 같습니다 다만, 제 실력이 미숙하여 어떤 방식으로 입력해도 잘 못따오는데 가게 코드를 따오기 위해 혹시 참고할 강의나.. 방법이 있을까요!? 현재 하고 있는 코드는 아래와 같으며, 첫번째 방법도 가능할지 선생님께 조언 구해봅니다 from selenium.webdriver.common.keys import Keys from selenium import webdriver import time import openpyxl from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By wb = openpyxl.Workbook() ws = wb.create_sheet("1페이지") ws.append(["순위","이름","방영일","프로그램"]) browser.get("https://pcmap.place.naver.com/restaurant/list?query=%EB%A7%9B%EC%9E%88%EB%8A%94%EB%85%80%EC%84%9D%EB%93%A4%20%EB%A7%9B%EC%A7%91&x=127.510209&y=36.5851932&bounds=125.8897257%3B35.304463%3B131.3279581%3B37.8016307&isCurrentLocationSearch=true&tvProgram=false&x=128.4255012&y=36.254532&ts=1644222834366&mapUrl=https%3A%2F%2Fmap.naver.com%2Fv5%2Fsearch%2F%25EB%25A7%259B%25EC%259E%2588%25EB%258A%2594%25EB%2585%2580%25EC%2584%259D%25EB%2593%25A4%2520%25EB%25A7%259B%25EC%25A7%2591%3Fc%3D14194371.5368239%2C4381444.7119141%2C7%2C0%2C0%2C0%2Cdh#") browser.implicitly_wait(10) wait = WebDriverWait(browser, 10) # element = wait.until(EC.element_to_be_clickable((By.XPATH, "//*[@id='_pcmap_list_scroll_container']"))) element.click() #로딩된 데이터 개수 확인 lis = browser.find_elements_by_css_selector("li._1EKsQ._12tNp") before_len = len(lis) while True: #맨 아래로 스크롤 내린다 browser.find_element_by_css_selector("body").send_keys(Keys.END) #스크롤 사이 페이지 로딩 시간 time.sleep(2) #스크롤 후 로딩된 데이터 개수 확인 lis = browser.find_elements_by_css_selector("li._1EKsQ._12tNp") after_len = len(lis) #로딩된 데이터 개수가 같다면 반복 멈춤 if before_len == after_len: break before_len = after_len # 데이터 기다리는 시간을 0으로 만들어 줘요. (데이터가 없더라도 빠르게 넘어감) browser.implicitly_wait(0) rank = 1 for li in lis: #광고 상품 아닌 것만 if len(li.find_elements_by_css_selector("svg._2ulu3")) == 0: #별점이 있는 가게만 크롤링 if len(li.find_elements_by_css_selector("span._2FqTn._1mRAM>em")) > 0: #가게명 name = li.find_element_by_css_selector("span.OXiLu").text # 프로그램 program = li.find_element_by_css_selector("div._1fp5H._1tGBC > div").text #방영일 star = li.find_element_by_css_selector("div._3hn9q > div > a").text print(rank, name, star, program) ws.append([rank, name, star, program]) rank = rank + 1 wb.save("1페이지.xlsx")
-
해결됨[2024 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
네이버 지도 크롤링 관련 질문
안녕하세요 선생님 만들어주신 크롤링 강의 신청해서 잘 수강하고 있는 한 학생입니다 다름이 아니라, 업무에서 '생생정보통 맛집'에 대한 네이버지도 크롤링이 필요하여 셀레니움으로 메뉴까지 크롤링하는 방법에 도전하던 중 커뮤니티에 json으로 크롤링하는 방법을 올려주신 분이 있어서 활용해보았습니다 다만, json의 경우 '생생정보통맛집 서울'이라는 쿼리로는 제대로 값이 생성이 안되더라구요 아무래도 이게 키워드라기보단 필터라서 그런 것 같긴한데 api 주소로 요청해서 받아오는데 필터를 아무리 검색해도 찾아볼 수가 없더라구요.. 유튜브때처럼 api에 해당하는 필터 값을 알려주는 사이트가 있으면 좋으련만... 고민해봤는데, 위도경도가 현재 컴퓨터 위치를 자동으로 보내서 탐색하기 때문이라고 생각합니다 이런건 혹시 어떤 값으로 바꿔줄 수 있을지.. 아니면 제대로 크롤링 될 수 있도록 해보고싶은데 힌트나.. 방법을 얻을 수 있을까요? 감사합니다 import requests import urllib, openpyxl, time wb = openpyxl.Workbook() ws = wb.active ws.append(['상호명', '주소', '연락처', '메뉴']) with open('C:/program_list.txt', 'r', encoding='utf-8') as tf: keywords = tf.readlines() for keyword in keywords: keyword = keyword.strip().replace('\t', '') print(keyword, '에 나온 맛집입니다.\n\n') url_keyword = urllib.parse.quote(keyword) try: for i in range(1, 20): print('\n', i,'페이지입니다.\n') response = requests.get(f'https://map.naver.com/v5/api/search?caller=pcweb&query={url_keyword}&type=all&page={i}&displayCount=40&lang=ko', headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36'}).json() numbers = response['result']['place']['list'] for i in range(0,len(numbers)): name = response['result']['place']['list'][i]['name'] address = response['result']['place']['list'][i]['roadAddress'] tel = response['result']['place']['list'][i]['telDisplay'] menuinfo = response['result']['place']['list'][i]['menuInfo'] print(name, address, tel, menuinfo) ws.append([name, address, tel, menuinfo]) time.sleep(1) except: print('끝났습니다.') wb.save(f'{target_word}결과.xlsx') tf.close()
-
미해결[2024 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
[Mac] pyautogui 오류(검은 프롬프트창)
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 강사님! 수업 잘 듣고있습니다. 다름이아니라, 과거 해당 강의내용을 잘 수강하여 코드실행까지 확인하고 개인프로젝트에서까지 해당내용 잘 활용하였는데요... 제가 사정이 있어 제 노트북을 한번 포맷 후, 강의내용 복기를 위해 다시한번 코드를 따라치면서 복습해보니 pyautogui에서 실행오류가발생합니다. 이런식으로 Pyautogui 사용시 프롬프트창이 검정색으로 나와서 메시지 및 입력칸이 보이질 않아 입력하기가 힘든상황인데요, 사실 보이지 않을뿐이지 뭐가 입력이 되긴 하는지 뭐라도 적고 ok를 누르면 코드가 잘 실행되긴합니다. pip uninstall로 삭제후 재설치또한 해봐도 동일하였구요, 해당내용 한글로도, 영어로도 열심히 구글링해봤으나, 제 검색실력의 문제인건지 관련내용을 찾을 수 없어 오류 해결이 안되어서 혹시나 이런 경험 또한 겪어보신적이 있으신지 궁금하여 이렇게 질문드리게되었습니다 ㅜㅜ 해결방법 혹시 아실까요? 감사합니다.
-
미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
정규표현식 질문
안녕하세요. 수업 완강하고 전체적으로 복습중인데요! 정규 표현식 관련돼서 질문이 있습니다. 작성한 코드 from re import * mar = compile('http\:\/\/item.gmarket.co.kr\/Item\?goodscode\=[0-9]+\&\;ver\=[0-9]+') mar.search('http://item.gmarket.co.kr/Item?goodscode=1824005992&ver=637790507716456107') 위와 같이 작성하면 아래의 문자열 데이터가 모두 추출될줄 알았는데 http://item.gmarket.co.kr/Item?goodscode=1824005992&ver=637790507716456107 run 해보니 아래의 데이터가 추출되었습니다 http://item.gmarket.co.kr/Item?goodscode=18240059 왜 추출되다가 중간에 끊긴걸까요?
-
미해결따라하며 익히는 크롤링 마스터 with데이터공방
크롤링 페이지 접속 에러
# '접속' url = 'https://www.naver.com/' browser.get(url) 이라고 할 경우 아래 사진과 같이 오류가 발생하게 되는데, 어떻게 해결할 수 있나요 ?
-
미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
크롤링 질문
안녕하세요. 강의 열심히 잘 듣고 있습니다.! 항상 강의가 끝나고 제 스스로 학습한 내용을 복습하는데요! html 태그와 select를 활용하여서 크롤링을 시도하고 있었습니다. 아래 이미지와 같이 초록색으로 표시한 부분의 태그와 클래스 관계를 이용해서 html 정보를 프린트 해봤는데 [] 이렇게 아무것도 뜨지 않습니다.. 분명 태그간 상하과계를 제대로 적었는데 말이죠... 신기한건 초록색 부분을 없애고 ul > li.-qHwcFXhj0 이렇게 입력한 뒤 select을 하면 데이터가 뜬다는 것입니다 ㅜㅠ 분명 초록색으로 표시한 부분도 있는데 왜 초록색 부분을 추가해서 select 하면 데이터가 뜨지 않는 걸까요?