Johan713 commited on
Commit
3bbf2dc
·
verified ·
1 Parent(s): 597caa6

Update app2.py

Browse files
Files changed (1) hide show
  1. app2.py +24 -9
app2.py CHANGED
@@ -451,25 +451,41 @@ def query_public_case_law(query: str) -> List[Dict[str, Any]]:
451
  justia_response = requests.get(justia_url, headers=justia_headers)
452
  justia_response.raise_for_status()
453
  justia_soup = BeautifulSoup(justia_response.text, 'html.parser')
 
454
  justia_results = justia_soup.find_all('div', class_='g')
455
 
456
- for result in justia_results[:3]: # Limit to 3 results
457
- title_elem = result.find('h3', class_='r')
458
- if title_elem and 'law.justia.com' in title_elem.find('a')['href']:
459
- title = title_elem.text.strip()
460
- url = title_elem.find('a')['href']
461
- snippet = result.find('div', class_='s').text.strip()
 
 
 
 
 
 
 
 
 
 
 
 
 
462
  cases.append({
463
  "source": "Justia",
464
- "case_name": title,
 
465
  "summary": snippet,
466
- "url": url
467
  })
468
  except requests.RequestException as e:
469
  print(f"Error querying Justia: {e}")
470
 
471
  # CourtListener Search
472
  courtlistener_url = f"https://www.courtlistener.com/api/rest/v3/search/?q={query}&type=o&format=json"
 
473
  for attempt in range(3): # Retry up to 3 times
474
  try:
475
  courtlistener_response = requests.get(courtlistener_url)
@@ -480,7 +496,6 @@ def query_public_case_law(query: str) -> List[Dict[str, Any]]:
480
  print(f"Attempt {attempt + 1} failed: {e}")
481
  if attempt == 2:
482
  print(f"Failed to retrieve or parse data from CourtListener: {e}")
483
- break
484
  time.sleep(2)
485
 
486
  if 'results' in courtlistener_data:
 
451
  justia_response = requests.get(justia_url, headers=justia_headers)
452
  justia_response.raise_for_status()
453
  justia_soup = BeautifulSoup(justia_response.text, 'html.parser')
454
+
455
  justia_results = justia_soup.find_all('div', class_='g')
456
 
457
+ for result in justia_results[:5]: # Limit to top 5 results
458
+ title_elem = result.find('h3')
459
+ link_elem = result.find('a')
460
+ snippet_elem = result.find('div', class_='VwiC3b')
461
+
462
+ if title_elem and link_elem and snippet_elem:
463
+ title = title_elem.text
464
+ link = link_elem['href']
465
+ snippet = snippet_elem.text
466
+
467
+ # Extract case name and citation from the title
468
+ case_info = title.split(' - ')
469
+ if len(case_info) >= 2:
470
+ case_name = case_info[0]
471
+ citation = case_info[1]
472
+ else:
473
+ case_name = title
474
+ citation = "Citation not found"
475
+
476
  cases.append({
477
  "source": "Justia",
478
+ "case_name": case_name,
479
+ "citation": citation,
480
  "summary": snippet,
481
+ "url": link
482
  })
483
  except requests.RequestException as e:
484
  print(f"Error querying Justia: {e}")
485
 
486
  # CourtListener Search
487
  courtlistener_url = f"https://www.courtlistener.com/api/rest/v3/search/?q={query}&type=o&format=json"
488
+ courtlistener_data = {}
489
  for attempt in range(3): # Retry up to 3 times
490
  try:
491
  courtlistener_response = requests.get(courtlistener_url)
 
496
  print(f"Attempt {attempt + 1} failed: {e}")
497
  if attempt == 2:
498
  print(f"Failed to retrieve or parse data from CourtListener: {e}")
 
499
  time.sleep(2)
500
 
501
  if 'results' in courtlistener_data: