목록etc/Crawling (25)
Note
api_key = '발급받은 api 키' # API v3 youtube = build('youtube', 'v3', developerKey=api_key) response = youtube.channels().list(part=['snippet','contentDetails','statistics','brandingSettings','topicDetails'],id='가져올 채널 id').execute() df_res = pd.json_normalize(response) if(df_res['pageInfo.totalResults'][0]>=1): df = pd.json_normalize(response['items']) channel_info = pd.DataFrame() channel_info['cha..
video_results = {} cnt = 0 for video_id in tqdm(array_video_id): #Video_ID 목록 if(cnt % 9 == 2): time.sleep(3) cnt += 1 result = {} video_url = "https://www.youtube.com"+video_id response = session.get(video_url,headers = headers) #URL 통신 if(response.status_code == 429): print(response) soup = bs(response.text, "html.parser") try: # 예외 발생하면 가져오지 않음 meta = soup.find_all("meta") result['video_id'] ..
url = input('채널 URL을 입력해주세요 : ',) # 첫 화면 URL driver = Chrome() driver.implicitly_wait(3) driver.get(url) driver.maximize_window() driver.find_element_by_xpath('//*[@id="tabsContent"]/tp-yt-paper-tab[2]/div').click() # 채널 동영상 탭 body = driver.find_element_by_tag_name('body') # 스크롤 다운 num_of_pagedowns = 10 while num_of_pagedowns: body.send_keys(Keys.PAGE_DOWN) time.sleep(3) num_of_pagedowns -= 1 ht..

유튜브 영상 중 조회수가 가장 많은 영상 댓글을 크롤링 필요한 라이브러리를 임포트 한다. 유튜브 크롤링을 위한 크롬을 열어준다. 유튜브는 검색을 위해 검색창을 클릭해 줘야 하기 때문에 검색을 위한 클릭 버튼을 설정해주고 검색하고 싶은 검색어를 입력해준다. 위 과정을 통해 입력된 검색어를 검색하기 위해 검색 버튼을 클릭한다. 유튜브에서 검색을 하고 조회수 순으로 정렬하기 위한 필터 설정을 하고 가끔 필터를 클릭하면 광고가 나오는 경우가 있는데 그걸 스킵하는 코드이다. 조회수를 찾아서 클릭하고 젤 위에 있는 첫번째 영상을 클릭한다. 영상을 클릭하면 자동 재생되는 영상을 멈추는 코드이다. 필요한 것은 댓글이기 때문에 영상을 멈춘다. 스크롤 다운을 통해 유튜브 댓글을 불러온다. 타임 슬립을 너무 적은 시간 걸어..

데이터를 만져보는 사람들이라면 어디선가 한 번쯤은 들어봤을 크롤링에 대한 글입니다. 크롤링을 해서 얻은 데이터에 대한 책임은 데이터를 사용한 사람에게 있습니다. 크롤링을 하기 좋은 키워드는 사람들의 반응이 많은 것이 데이터를 수집하기 용이하다. 그래서 저는 LH에 대해서 네이버 뉴스 기사를 크롤링해봤습니다. (1) 네이버 뉴스 url 수집 크롤링을 하기 위한 라이브러리들을 임포트 시켜주고 설치합니다. 크롤링을 하기 위해서 크롬을 사용했고 크롬 드라이버를 설치해야 합니다. 네이버 검색창에 입력할 키워드를 설정해 준 모습이다. 코드를 실행하면 크롬 창이 띄워지고 검색창에 내가 크롤링하고자 하는 검색어가 검색되며 url을 가져오게 된다. timesleep(3)은 지연시간을 의미한다. 지연시간 없이 크롤링을 하..