웹스크래핑 7

뉴스 크롤링(#네이버 뉴스)_코드 설명

수업 내용 리마인드 및 아카이빙 목적의 업로드Q. 네이버 뉴스에서 '특정 키워드(청년취업사관학교)'와 '날짜 범위(20240101~20240731)'에 해당하는 게시물들을 자동으로 수집하고, 각 게시물의 "제목", "발행기관", "작성일", "본문 내용", "URL"을 추출하여 CSV 파일로 저장하는 코드를 작성하세요.https://search.naver.com/search.naver?where=news&query=%EC%B2%AD%EB%85%84%EC%B7%A8%EC%97%85%EC%82%AC%EA%B4%80%ED%95%99%EA%B5%90&sm=tab_opt&sort=1&photo=0&field=0&pd=3&ds=2024.01.01&de=2024.07.31&docid=&related=0&mynews=..

+ 개발 2024.08.31

블로그 크롤링(#네이버 블로그)_코드 설명

수업 내용 리마인드 및 아카이빙 목적의 업로드Q. 네이버 블로그에서 '특정 키워드(청년취업사관학교)'와 '날짜 범위(20240101~20240731)'에 해당하는 게시물들을 자동으로 수집하고, 각 게시물의 "제목", "작성자 닉네임", "작성일", "본문 내용", "URL"을 추출하여 CSV 파일로 저장하는 코드를 작성하세요. https://search.naver.com/search.naver?ssc=tab.blog.all&query=%EC%B2%AD%EB%85%84%EC%B7%A8%EC%97%85%EC%82%AC%EA%B4%80%ED%95%99%EA%B5%90&sm=tab_opt&nso=so%3Add%2Cp%3Afrom20240101to20240731 청년취업사관학교 : 네이버 블로그검색'청년취업사관학..

+ 개발 2024.08.30

MySQL을 활용한 크롤링 데이터 저장(ft.Python)

수업 내용 리마인드 및 아카이빙 목적의 업로드 1. pymysql 설치하기 먼저, Python에서 MySQL에 접근하려면 pymysql이라는 라이브러리를 설치해야 해요. 이 라이브러리를 사용하면 Python으로 MySQL 데이터베이스와 쉽게 소통할 수 있어요.pip install pymysql 2. MySQL 데이터베이스에 접속하기 이제 MySQL 데이터베이스에 접속해 볼게요. pymysql.connect() 메소드를 사용하면 쉽게 데이터베이스에 연결할 수 있어요. 아래 코드에서 각 인자를 어떻게 설정하는지 볼 수 있어요.import pymysqldb = pymysql.connect( host='localhost', # 서버 IP 주소 (보통 로컬 서버면 'localhost') port=3..

+ 개발 2024.08.23

Selenium 무한 스크롤 웹 크롤링(#Jungle)_Gen.AI

수업 내용 리마인드 및 아카이빙 목적의 업로드Q. 아래 URL의 메인페이지에서 인피니티 스크롤을 통해 10페이지까지의 제목을 크롤링하여 json 파일 형태로 저장해주세요.https://www.jungle.co.kr/ 디자인 이야기가 있는 디자이너들의 매거진, 디자인정글 www.jungle.co.krA. ChatGPT에게 필요한 정보를 제공하고, 프롬프트를 통해 데이터를 파일로 저장하는 코드 작성 요청1) 프롬프트 작성 및 요청하기너는 웹 크롤링 전문가야. 'Selenium'을 사용하여 아래의 웹 페이지에서 '인피니티 스크롤'을 통해 '기사 제목'을 '10페이지'까지 크롤링하고, 이를 JSON 파일로 저장하는 코드를 작성해줘.제공하는 정보:1. 웹 페이지 URL: https://www.jungle.co.k..

+ 개발 2024.08.18

혼합 방식(동기+비동기) 웹 크롤링(#뉴스기사)_Gen.AI

수업 내용 리마인드 및 아카이빙 목적의 업로드Q. 아래 URL의 다음 뉴스기사의 기사제목, 기사내용, 사람들반응을 모두 크롤링하여 json 파일 형태로 저장해주세요.https://v.daum.net/v/20240811221440047 [단독] '침출수 줄줄' 여수산단 대체녹지, 오염된 토사로 조성됐다【 앵커멘트 】 여수산단 대체녹지에서 1년 넘게 발암물질이 섞인 침출수가 흘러나오고 있다는 소식, 얼마 전 전해드렸는데요. 토양오염의 원인을 찾지 못했다며 녹지를 조성한 기업도, 감독해v.daum.net 결과 예시: [{ “title” : “제목 삽입”, “body” : “본문 삽입“, “reactions”: { “react1”: 0, “react2”:0, … }] A. ChatGPT에게 필요한 정보를 제공하..

+ 개발 2024.08.17

동기 웹과 비동기 웹의 차이(ft.데이터 크롤링)

수업 내용 리마인드 및 아카이빙 목적의 업로드 오늘은 데이터 크롤링에 대해 이야기해볼까 해요. 웹에서 데이터를 자동으로 모아 활용하는 기술인데, 웹 페이지의 구조에 따라 크롤링이 쉽기도 하고 어려워지기도 하거든요. 특히 동기 웹과 비동기 웹이 어떻게 다른지 알면 크롤링이 한층 수월해질 거예요. 그럼 함께 알아볼까요? 1. 동기 웹(Synchronous Web)이란?동기 웹은 쉽게 말해, 웹 페이지가 한 번에 순서대로 로드되는 방식이에요. 페이지를 열면 모든 데이터가 한꺼번에 불러와지죠. 그래서 사용자는 페이지가 완전히 로드된 후에야 내용을 볼 수 있어요. 예를 들어, 뉴스 사이트를 떠올려 볼게요. 웹 페이지를 열면 모든 기사 제목, 내용, 이미지 등이 한 번에 다 로드되죠? 이때 크롤러는 HTML 코드를..

+ 개발 2024.08.13

웹 크롤링(#Requests #BeautifulSoup)

수업 내용 리마인드 및 아카이빙 목적의 업로드1. Requests 모듈Requests는 Python의 HTTP 요청을 간편하게 처리할 수 있는 라이브러리입니다. 다양한 HTTP 메서드를 사용하여 데이터를 서버와 주고받을 수 있습니다.GET 요청: 주로 데이터를 조회할 때 사용합니다.import requestsURL = 'http://httpbin.org/get'response = requests.get(URL)print(response.status_code)print(response.text) POST 요청: 새로운 데이터를 서버에 제출할 때 사용합니다.response = requests.post("http://httpbin.org/post", data={'key':'value'}) PUT 요청: 서버에..

+ 개발 2024.08.11