"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Um guia técnico para coleta de dados de advogados em Atlanta, Geórgia, com Python

Um guia técnico para coleta de dados de advogados em Atlanta, Geórgia, com Python

Publicado em 2024-11-08
Navegar:709

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

Neste guia, exploraremos como usar Python para extrair dados de advogados de sites jurídicos, com foco em advogados em Atlanta, Geórgia. Essas informações podem ser valiosas para quem procura encontrar um advogado, pesquisar escritórios de advocacia ou compilar dados sobre advogados próximos. Usaremos bibliotecas Python populares para criar um raspador robusto que pode ajudá-lo a coletar informações sobre advogados na área de Atlanta.

Pré-requisitos
Antes de começarmos, certifique-se de ter o seguinte instalado:

  • Python 3.x
  • pip (instalador de pacote Python)

Você precisará instalar estas bibliotecas:

pip install requests lxml csv

Configurando o raspador
Primeiro, vamos importar as bibliotecas necessárias e configurar nossos cabeçalhos e cookies:

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’,
}

Fazendo a solicitação
Agora, vamos fazer uma solicitação ao site para buscar os dados do advogado:

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,
)

Analisando o HTML
Usaremos lxml para analisar o conteúdo HTML:

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

Salvar dados em CSV
Vamos criar uma função para salvar nossos dados extraídos em um arquivo 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)

Extração de dados de advogado
Agora, vamos percorrer os elementos do advogado e extrair as informações relevantes:

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)

Conclusão
Este script Python permite que você extraia dados de advogados de um site jurídico específico, com foco em advogados em Atlanta, Geórgia. Ao executar este script, você pode compilar rapidamente uma lista de escritórios de advocacia e encontrar advogados próximos. Esses dados podem ser inestimáveis ​​para quem deseja se conectar com advogados ou realizar pesquisas sobre o cenário jurídico em Atlanta.

Lembre-se de usar esses dados de forma responsável e em conformidade com os termos de serviço do site e as leis relevantes. Respeite sempre a privacidade dos indivíduos cujos dados você está coletando.

Para aqueles que procuram encontrar um advogado ou pesquisar escritórios de advocacia, esses dados coletados podem fornecer um ponto de partida. No entanto, é importante complementar essas informações com pesquisas adicionais, como leitura de avaliações, verificação de registros de ordens de advogados e contato pessoal com os advogados para garantir que eles sejam adequados para suas necessidades legais.

Aproveitando Python e técnicas de web scraping, você pode coletar com eficiência informações sobre advogados em Atlanta, Geórgia, agilizando o processo de encontrar representação legal ou conduzir pesquisas de mercado no setor jurídico.

Pronto para aumentar sua presença na web?


Sou especializado na construção de aplicativos da web React.js responsivos, adaptados às suas necessidades exclusivas. Vamos dar vida à sua visão!



Contrate-me no Fiverr →
Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/fazlay/a-technical-guide-to-scraping-attorney-data-in-atlanta-georgia-with-python-3efg?1 Se houver alguma violação, por favor entre em contato com study_golang@163 .comdelete
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3