Dans ce guide, nous explorerons comment utiliser Python pour extraire les données des avocats des sites Web juridiques, en nous concentrant sur les avocats d'Atlanta, en Géorgie. Ces informations peuvent être précieuses pour ceux qui cherchent à trouver un avocat, à rechercher des cabinets juridiques ou à compiler des données sur les avocats à proximité. Nous utiliserons les bibliothèques Python populaires pour créer un grattoir robuste qui peut vous aider à recueillir des informations sur les avocats de la région d'Atlanta.
Prérequis
Avant de commencer, assurez-vous que les éléments suivants sont installés :
Vous devrez installer ces bibliothèques :
pip install requests lxml csv
Configuration du grattoir
Tout d’abord, importons les bibliothèques nécessaires et configurons nos en-têtes et 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’, }
Faire la demande
Maintenant, faisons une demande au site Web pour récupérer les données de l'avocat :
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, )
Analyse du code HTML
Nous utiliserons lxml pour analyser le contenu HTML :
webp = html.fromstring(response.content) all_people_elems = webp.xpath(“//*[@id=’people_grid’]/div[@class=’person’]”)
Enregistrement des données au format CSV
Créons une fonction pour enregistrer nos données récupérées dans un fichier 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)
Extraction des données de l'avocat
Passons maintenant en revue les éléments de l'avocat et extrayons les informations pertinentes :
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)
Conclusion
Ce script Python vous permet d'extraire les données des avocats d'un site Web juridique spécifique, en vous concentrant sur les avocats d'Atlanta, en Géorgie. En exécutant ce script, vous pouvez rapidement dresser une liste de cabinets juridiques et trouver des avocats à proximité. Ces données peuvent être inestimables pour ceux qui cherchent à entrer en contact avec des avocats ou à effectuer des recherches sur le paysage juridique à Atlanta.
N'oubliez pas d'utiliser ces données de manière responsable et conformément aux conditions d'utilisation du site Web et aux lois en vigueur. Respectez toujours la vie privée des personnes dont vous collectez les données.
Pour ceux qui cherchent à trouver un avocat ou à rechercher des cabinets juridiques, ces données récupérées peuvent constituer un point de départ. Cependant, il est important de compléter ces informations par des recherches supplémentaires, telles que la lecture d'avis, la vérification des dossiers du barreau et le contact personnel des avocats pour s'assurer qu'ils correspondent bien à vos besoins juridiques.
En tirant parti de Python et des techniques de web scraping, vous pouvez collecter efficacement des informations sur les avocats d'Atlanta, en Géorgie, rationalisant ainsi le processus de recherche d'une représentation juridique ou de réalisation d'études de marché dans le secteur juridique.
Je me spécialise dans la création d'applications Web React.js réactives adaptées à vos besoins uniques. Donnons vie à votre vision !
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3