반응형
httpx BeautifulSoup 를 이용한 demoday 크롤링
이는 파이썬으로 작성된 웹 스크래핑 코드입니다. 이는 demoday.co.kr에서 기업 정보를 가져와서 출력하는 함수를 정의하고 있습니다. 이 함수는 'Com_Name'이라는 인자를 받아서 해당 기업의 정보를 가져옵니다. 가져온 정보는 다음과 같습니다.
기업 정보
- 임직원 수
- 회사 이름
- 회사 설명
- 대표자 이름
- 설립 년도
- 회사 홈페이지 주소
이 정보는 각각 '임직원', '회사이름', '설명', '대표자', '설립년도', '사이트주소' 라는 키를 가지고 있는 딕셔너리 형태로 반환됩니다.
코드를 실행하기 위해서는 requests, httpx, BeautifulSoup 모듈이 필요합니다. 또한, httpx.get() 함수에서 verify=False 인자를 주어 SSL 인증서 검증을 생략하고 있으므로, 보안상의 이슈가 있을 수 있습니다. 따라서, 이를 주의하여 사용해야 합니다.
# httpx, requests, BeautifulSoup 모듈 import
import httpx
import requests
from bs4 import BeautifulSoup
# 기업 정보 가져오는 함수 정의
def get_Data(Com_Name):
# HTTP 헤더 설정
header = {
'Host': 'www.demoday.co.kr',
'HTTP_X_Requested-With': 'XMLHttpRequest',
'Accept':'application/json, text/plain, */*',
'X-Requested-With': 'XMLHttpRequest'
}
# URL 설정
url = f'http://14.63.219.106:80/mobile/company/{Com_Name}'
# HTTP GET 요청 보내기
response = httpx.get(url, headers=header,verify=False)
# 응답 받은 데이터를 JSON 형태로 변환
Get_json = response.json()
# 기업 정보가 담긴 딕셔너리 가져오기
Base_Data = Get_json["companyBasicInfo"]
# 필요한 정보들 추출하여 변수에 저장
임직원 = Base_Data["emp_count"]
회사이름 = Base_Data["company_name"]
설명 = Base_Data["description"]
대표자 = Base_Data["owner_name"]
설립년도 = Base_Data["open_date"]
사이트주소 = Base_Data["homepage_url"]
# 추출한 정보들을 딕셔너리 형태로 반환
return_Datas = { "임직원":임직원,'회사이름':회사이름,'설명':설명,'대표자':대표자,'설립년도':설립년도,'사이트주소':사이트주소}
# 기존 주석 처리한 출력 문자열
# Text = f"임직원 : {임직원} \n회사이름 : {회사이름} \n설명 : {설명} \n대표자 : {대표자} \n설립년도 : {설립년도} \n사이트주소 : {사이트주소}"
# 추출한 정보들을 담은 딕셔너리 반환
return return_Datas
# 함수 호출 (Com_Name 인자는 '에이팀')
get_Data('에이팀')
반응형
'Python' 카테고리의 다른 글
구글 제미나이 Gemini, 파이썬 API 기초 사용법 (0) | 2024.01.22 |
---|---|
Pydantic 2.0 업데이트: Python의 데이터 검증 및 구문 분석 향상 (0) | 2023.09.07 |
[python] 파이썬 Pandas 재무 데이터 분석 (0) | 2023.02.27 |
python url parameter 인코딩 디코딩 변경방법 (0) | 2023.02.10 |
python error ERROR: 대상 컴퓨터에서 연결을 거부했으므로 연결하지 못했습니다. 파이썬 에러 해결 (0) | 2023.02.10 |
댓글