"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Python을 사용하여 조지아주 애틀랜타에서 변호사 데이터를 스크랩하는 기술 가이드

Python을 사용하여 조지아주 애틀랜타에서 변호사 데이터를 스크랩하는 기술 가이드

2024-11-08에 게시됨
검색:403

A Technical Guide to Scraping Attorney Data in Atlanta, Georgia with Python

이 가이드에서는 조지아주 애틀랜타의 변호사를 중심으로 Python을 사용하여 법률 웹사이트에서 변호사 데이터를 스크랩하는 방법을 살펴보겠습니다. 이 정보는 변호사를 찾거나 법률 회사를 조사하거나 근처 변호사에 대한 데이터를 수집하려는 사람들에게 유용할 수 있습니다. 우리는 인기 있는 Python 라이브러리를 사용하여 애틀랜타 지역 변호사에 대한 정보를 수집하는 데 도움이 되는 강력한 스크레이퍼를 만들 것입니다.

전제조건
시작하기 전에 다음이 설치되어 있는지 확인하세요.

  • 파이썬 3.x
  • pip(Python 패키지 설치 프로그램)

다음 라이브러리를 설치해야 합니다:

pip install requests lxml csv

스크레이퍼 설정
먼저 필요한 라이브러리를 가져오고 헤더와 쿠키를 설정해 보겠습니다.

from lxml import html
import os
import csv
import requests
cookies = {
 ‘OptanonAlertBoxClosed’: ‘2024–08–29T14:38:29.268Z’,
 ‘_ga’: ‘GA1.2.1382693123.1724942310’,
 ‘_gid’: ‘GA1.2.373246331.1724942310’,
 ‘_gat’: ‘1’,
 ‘OptanonConsent’: ‘isIABGlobal=false&datestamp=Fri Aug 30 2024 00:17:14 GMT+0600 (Bangladesh Standard Time)&version=5.9.0&landingPath=NotLandingPage&groups=0_106263:1,0_116595:1,0_104533:1,101:1,1:1,0_116597:1,103:1,104:1,102:1,3:1,0_104532:1,2:1,4:1&AwaitingReconsent=false’,
 ‘_ga_JHNLZ3FY7V’: ‘GS1.2.1724954588.3.1.1724955436.0.0.0’,
}
headers = {
 ‘accept’: ‘text/html,application/xhtml xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7’,
 ‘accept-language’: ‘en-US,en;q=0.9,bn;q=0.8’,
 ‘cache-control’: ‘no-cache’,
 ‘dnt’: ‘1’,
 ‘pragma’: ‘no-cache’,
 ‘sec-ch-ua’: ‘“Chromium”;v=”128", “Not;A=Brand”;v=”24", “Google Chrome”;v=”128"’,
 ‘sec-ch-ua-mobile’: ‘?0’,
 ‘sec-ch-ua-platform’: ‘“Windows”’,
 ‘sec-fetch-dest’: ‘document’,
 ‘sec-fetch-mode’: ‘navigate’,
 ‘sec-fetch-site’: ‘cross-site’,
 ‘sec-fetch-user’: ‘?1’,
 ‘upgrade-insecure-requests’: ‘1’,
 ‘user-agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36’,
}

요청하기
이제 변호사 데이터를 가져오기 위해 웹사이트에 요청해 보겠습니다.

response = requests.get(
 ‘https://www.kslaw.com/people?capability_id=&locale=en&office_id=1&page=1&per_page=400&q=&school_id=&starts_with=&title_id',
 cookies=cookies,
 headers=headers,
)

HTML 구문 분석
lxml을 사용하여 HTML 콘텐츠를 구문 분석합니다.

webp = html.fromstring(response.content)
all_people_elems = webp.xpath(“//*[@id=’people_grid’]/div[@class=’person’]”)

CSV로 데이터 저장
스크랩한 데이터를 CSV 파일에 저장하는 함수를 만들어 보겠습니다.

def save_csv(filename, data_list, isFirst=False, removeAtStarting=True):
 “””Save data to csv file”””
 if isFirst:
 if os.path.isfile(filename):
 if removeAtStarting:
 os.remove(filename)
 else:
 pass
with open(f’{filename}’, “a”, newline=’’, encoding=’utf-8-sig’) as fp:
 wr = csv.writer(fp, dialect=’excel’)
 wr.writerow(data_list)
# Initialize the CSV file
people_file = f”kslaw_people.csv”
save_csv(people_file, [‘URL’, ‘Name’, ‘Status’, ‘Fax’, ‘Telephone’, ‘Email’, ‘Address’], isFirst=True)

변호사 데이터 추출 중
이제 변호사 요소를 반복하여 관련 정보를 추출해 보겠습니다.

for each_people in all_people_elems:
 name = each_people.xpath(“.//h2/a/text()”)[0]
 href = each_people.xpath(“.//h2/a/@href”)[0]
 full_url = f”https://www.kslaw.com{href}" if href else “URL not found”
 status = each_people.xpath(“.//p/text()”)[0].strip()
 fax = ‘ — ‘
 address = ‘ — ‘
# Extract the Atlanta telephone number
 phone_numbers = each_people.xpath(“.//p[@class=’contacts’]/a[starts-with(@href, ‘tel:’)]/text()”)
 phone_numbers = [phone.strip() for phone in phone_numbers]
 phone_numbers_str = ‘, ‘.join(phone_numbers) if phone_numbers else “Phone numbers not found”
# Extract the email address
 email = each_people.xpath(“.//p[@class=’contacts’]/a[contains(@href, ‘mailto:’)]/text()”)
 email = email[0].strip() if email else “Email not found”
data_list = [full_url, name, status, fax, phone_numbers_str, email, address]
 save_csv(people_file, data_list)
 print(data_list)

결론
이 Python 스크립트를 사용하면 조지아주 애틀랜타의 변호사에 초점을 맞춰 특정 법률 웹사이트에서 변호사 데이터를 스크랩할 수 있습니다. 이 스크립트를 실행하면 법률 회사 목록을 빠르게 작성하고 근처에 있는 변호사를 찾을 수 있습니다. 이 데이터는 변호사와 연결하거나 애틀랜타의 법률 환경에 대한 연구를 수행하려는 사람들에게 매우 중요할 수 있습니다.

이 데이터를 책임감 있게 사용하고 웹사이트의 서비스 약관 및 관련 법률을 준수해야 한다는 점을 기억하세요. 귀하가 수집하는 데이터의 소유자인 개인의 개인정보를 항상 존중하십시오.

변호사를 찾거나 법률 회사를 조사하려는 사람들에게 이 스크랩된 데이터는 출발점이 될 수 있습니다. 그러나 리뷰 읽기, 변호사 협회 기록 확인, 변호사에게 개인적으로 연락하여 귀하의 법적 요구 사항에 적합한지 확인하는 등 추가 조사를 통해 이 정보를 보완하는 것이 중요합니다.

Python과 웹 스크래핑 기술을 활용하면 조지아주 애틀랜타의 변호사에 대한 정보를 효율적으로 수집하여 법적 대리자를 찾는 과정이나 법률 분야 시장 조사를 간소화할 수 있습니다.

웹 존재감을 높일 준비가 되셨나요?


저는 귀하의 고유한 요구에 맞는 반응형 React.js 웹 애플리케이션 구축을 전문으로 합니다. 당신의 비전을 현실로 만들어 보세요!



Fiverr에서 고용해 주세요 →
릴리스 선언문 이 기사는 https://dev.to/fazlay/a-technical-guide-to-scraping-attorney-data-in-atlanta-georgia-with-python-3efg?1에서 복제됩니다. 침해가 있는 경우, 문의: Study_golang@163 .comdelete
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3