일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- Spring Batch
- 유닉스
- JVM
- 소프트웨어공학
- 코틀린
- chatGPT's answer
- write by chatGPT
- 고전역학
- 인프라
- Java
- 뉴턴역학
- 자바암호
- 시스템
- GIT
- lombok
- write by GPT-4
- oracle
- 리눅스
- GPT-4's answer
- 역학
- 자바
- python
- Database
- 자바네트워크
- 웹 크롤링
- 파이썬
- android
- NIO
- kotlin
- Spring boot
- Today
- Total
목록분류 전체보기 (835)
Akashic Records
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cRUVOp/btsGRhNXvgZ/jamWgHwN7Tacj9ZtRMPDu1/img.webp)
깊이 우선 탐색(DFS) 알고리즘을 사용하여 웹 페이지를 크롤링하는 파이썬 코드를 설계하겠습니다. DFS 알고리즘은 각 링크를 따라 최대한 깊이 들어가면서 크롤링을 진행하며, 스택이나 재귀 함수를 사용하여 구현할 수 있습니다. 여기서는 재귀 함수를 사용하여 구현하겠습니다. 필요한 라이브러리 설치pip install beautifulsoup4 requests 깊이 우선 탐색(DFS) 웹 크롤러 코드import requestsfrom urllib.parse import urljoin, urlparsefrom bs4 import BeautifulSoupdef is_valid_url(base_url, url): """ 동일 도메인 내의 URL인지 검사하고, 유효한 링크인지 확인합니..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/zdp7O/btsGRqc4lrq/ZgfSl1D1TFKBIPKksdYNzk/img.webp)
웹 페이지의 태그 링크를 따라가면서 연속적으로 URL을 찾아 분석하는 웹 크롤러를 만드는 것은 깊이 우선 탐색(DFS)이나 너비 우선 탐색(BFS)의 로직을 따를 수 있습니다. 여기서는 너비 우선 탐색을 사용한 기본적인 웹 크롤러를 설계하겠습니다. 이 크롤러는 시작 URL에서 링크를 추출하고, 각 링크를 방문하여 다시 링크를 추출하는 과정을 반복합니다. 몇 가지 단순화된 가정을 하고, 외부 링크는 무시하고 동일 도메인 내에서만 크롤링하도록 설정하겠습니다. 필요한 라이브러리 설치pip install beautifulsoup4 requests BFS 웹 크롤러 코드import requestsfrom urllib.parse import urljoin, urlparsefrom bs4 imp..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/b7L0FO/btsGRMta8WV/CgvbbgYyT6k5uwu9QwILD0/img.webp)
BeautifulSoup은 웹 크롤링 및 스크레이핑에서 매우 자주 사용되는 라이브러리로, HTML과 XML 문서에서 데이터를 추출하는 데 유용합니다. 여기 몇 가지 자주 사용하는 BeautifulSoup 코드 스니펫을 소개하고, 각각의 사용 방법을 설명하겠습니다. 1. 기본 설정 및 HTML 페이지 가져오기 웹 페이지에서 HTML을 가져오기 위해 requests 라이브러리와 BeautifulSoup을 사용합니다. 이는 크롤링 작업의 첫 단계입니다. import requests from bs4 import BeautifulSoup url = "https://example.com" response = requests.get(url) soup = BeautifulSoup(response.text, 'html...
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/JfqOW/btsGQOFmw8a/KMRrtugPCkkI0SpPBA3rXK/img.webp)
BeautifulSoup 라이브러리는 HTML과 XML 문서를 파싱하고 조작하기 위한 파이썬 라이브러리로, 매우 강력하고 유연한 도구입니다. 다음은 BeautifulSoup의 주요 메서드와 각 메서드의 사용 예시를 포함한 상세한 가이드입니다. 1. BeautifulSoup 설치 먼저, BeautifulSoup와 HTML을 요청하기 위한 requests 라이브러리를 설치해야 합니다: pip install beautifulsoup4 requests 2. BeautifulSoup 객체 생성 웹 페이지의 HTML을 가져와 BeautifulSoup 객체를 생성합니다. 이 객체를 통해 문서를 쉽게 탐색하고 조작할 수 있습니다. import requests from bs4 import BeautifulSoup url..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oYTdC/btsGQQQDH49/FkGtDA6Il9E99sEae5x4V0/img.webp)
웹 크롤링을 위한 파이썬 개발 환경을 설정하는 것은 비교적 간단한 과정입니다. 아래의 단계를 따라 개발 환경을 설정해보세요: 1. 파이썬 설치 파이썬 설치: 파이썬 공식 웹사이트(python.org)에서 최신 버전의 파이썬을 다운로드하고 설치합니다. 설치 과정에서 "Add Python to PATH" 옵션을 선택하면 편리합니다. 2. 텍스트 에디터 또는 IDE 설치 텍스트 에디터: Visual Studio Code, Sublime Text, Atom 등이 좋은 선택입니다. 이들은 코드 작성을 용이하게 해주는 다양한 기능을 제공합니다. IDE: PyCharm, Jupyter Notebook 등이 파이썬 개발에 널리 사용됩니다. PyCharm 같은 IDE는 파이썬 개발에 특화되어 있어 많은 편의 기능을 제공..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dzm9xl/btsGSR7SwWX/MDW36TGi7EJb7SMZv8DXHk/img.png)
파이썬은 웹 크롤링을 위한 인기 있는 프로그래밍 언어 중 하나입니다. 그 이유는 파이썬이 가진 여러 장점과 풍부한 라이브러리 생태계 때문입니다. 파이썬을 사용하여 웹 크롤링을 수행하는 과정과 사용되는 주요 도구들을 살펴보겠습니다. 파이썬의 장점 쉬운 문법: 파이썬은 초보자가 배우기 쉬운 직관적인 문법을 가지고 있습니다. 이로 인해 웹 크롤링을 위한 스크립트를 빠르게 작성하고 실행할 수 있습니다. 풍부한 라이브러리: 파이썬은 웹 크롤링과 데이터 분석을 위한 다양한 라이브러리를 제공합니다. 이 라이브러리들은 크롤링 과정을 간소화하고, 다양한 기능을 손쉽게 구현할 수 있도록 도와줍니다. 주요 웹 크롤링 라이브러리 Requests: HTTP 요청을 쉽게 보낼 수 있게 해 주는 라이브러리입니다. 웹사이트로부터 데..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/wvBdR/btsGSTkh74T/JzmKbkxCEz8UHn5taV2uo0/img.webp)
웹 크롤링을 수행할 때는 다음과 같은 윤리적 고려사항을 염두에 두어야 합니다. 이는 웹사이트 소유자의 권리를 존중하고, 법적인 문제를 피하는 데 중요한 역할을 합니다. 1. 저작권 및 데이터 소유권 존중 웹 페이지의 콘텐츠는 종종 저작권으로 보호받습니다. 크롤링을 통해 수집한 데이터를 상업적으로 활용하거나 공개할 때는 저작권법을 준수해야 하며, 필요한 경우 콘텐츠 소유자로부터 사용 허가를 받아야 합니다. 2. 로봇 배제 표준(Robots Exclusion Protocol) 준수 웹사이트들은 보통 robots.txt 파일을 통해 크롤러가 접근하면 안 되는 페이지를 지정합니다. 웹 크롤러는 이 파일의 지침을 따라야 하며, 지정된 페이지를 크롤링해서는 안 됩니다. 3. 서버 부하 최소화 크롤러가 짧은 시간에 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bHboiE/btsGQmhaCvK/xh7DS2sghH27N0kLhUgs2K/img.webp)
나심 니콜라스 탈레브의 저서 "안티프래질"은 불확실성과 혼돈 속에서도 성장하고 강해지는 시스템과 개인의 능력에 대해 다루고 있습니다. 이 책에서 '안티프래질'이란 개념은, 특정 물건이나 시스템이 스트레스, 충격, 변화 같은 외부의 요인에 의해 약해지거나 깨지기는커녕 오히려 강해지는 성질을 지니고 있을 때 사용됩니다. 탈레브는 이를 통해 경제, 생물학, 정치, 금융 시스템 등 다양한 분야에 적용하여 설명합니다. 이 책은 우리가 불확실성을 어떻게 이해하고, 그 속에서 어떻게 기회를 찾을 수 있는지에 대한 통찰을 이야기합니다. 안티프래질은 단순한 회복력이나 강인함보다 한 단계 더 나아간 개념이라고 볼 수 있다. 예를 들어, 우리 몸의 면역 시스템 같은 경우를 생각해 보면 병원균에 처음 노출될 때 몸은 아프고 ..