From dfc5be8f8fa965f3f5ba7d931179179647d144a8 Mon Sep 17 00:00:00 2001 From: Gianfranco Rossi Date: Mon, 11 Nov 2024 09:01:51 -0500 Subject: [PATCH] fix(utah, utahctapp): update to OpinionSiteLinear Solves #1220 - Site had changed; updated HTML selectors - make utahctapp inherit from utah --- .../opinions/united_states/state/utah.py | 92 +- .../opinions/united_states/state/utahctapp.py | 35 +- .../united_states/utah_example.compare.json | 451 +++- .../opinions/united_states/utah_example.html | 585 +++-- .../utahctapp_example.compare.json | 1919 ++++++++++------- .../united_states/utahctapp_example.html | 877 ++++---- 6 files changed, 2202 insertions(+), 1757 deletions(-) diff --git a/juriscraper/opinions/united_states/state/utah.py b/juriscraper/opinions/united_states/state/utah.py index d70365d09..ff35c06cb 100644 --- a/juriscraper/opinions/united_states/state/utah.py +++ b/juriscraper/opinions/united_states/state/utah.py @@ -1,70 +1,42 @@ -from datetime import datetime +import re -from juriscraper.OpinionSite import OpinionSite +from juriscraper.AbstractSite import logger +from juriscraper.OpinionSiteLinear import OpinionSiteLinear -class Site(OpinionSite): +class Site(OpinionSiteLinear): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) - self.url = "http://www.utcourts.gov/opinions/supopin/index.htm" + self.url = "https://legacy.utcourts.gov/opinions/supopin/" self.court_id = self.__module__ + self.status = "Published" - def _get_case_names(self): - return [ - name - for name in self.html.xpath( - '/html/body//div[@id="content"]//p[a[@class="bodylink"]]/a/text()' - ) - ] - - def _get_download_urls(self): - return [ - t - for t in self.html.xpath( - '/html/body//div[@id="content"]//p[a[@class="bodylink"]]/a/@href' - ) - ] - - def _get_docket_numbers(self): - docket_numbers = [] - for text in self.html.xpath( - '/html/body//div[@id="content"]//p[a[@class="bodylink"]]/text()' + def _process_html(self): + for row in self.html.xpath( + "//div[@id='content']//p[a[contains(@href, '.pdf')]]" ): - try: - parts = text.strip().split(", ") - docket_numbers.append(parts[1]) - except IndexError: - # Happens in whitespace-only text nodes. + if row.xpath("br"): + # Superseded opinions + logger.info("Skipping row %s", row.text_content()) continue - return docket_numbers - def _get_case_dates(self): - dates = [] - for text in self.html.xpath( - '/html/body//div[@id="content"]//p[a[@class="bodylink"]]/text()' - ): - parts = text.strip().split(", ") - try: - caseDate = f"{parts[-3]}, {parts[-2]}" - dates.append(datetime.strptime(caseDate, "Filed %B %d, %Y")) - except IndexError: - # Happens in whitespace-only text nodes. - continue - return dates - - def _get_precedential_statuses(self): - return ["Published"] * len(self.case_names) - - def _get_citations(self): - neutral_citations = [] - for text in self.html.xpath( - '/html/body//div[@id="content"]//p[a[@class="bodylink"]]/text()' - ): - try: - parts = text.strip().split(", ") - if parts[-1]: - neutral_citations.append(parts[-1]) - except IndexError: - # Happens in whitespace-only text nodes. - continue - return neutral_citations + # pick longest text; if not, HTML comments may cause wrong indexing + text = sorted(row.xpath("text()"))[-1] + neutral_cite_match = re.search(r"\d{4} UT( App)? \d{1,}", text) + citation = neutral_cite_match.group(0) + + filed_index = text.find("Filed") + docket = text[:filed_index].strip(", ") + date_filed = text[ + filed_index + 5 : neutral_cite_match.start() + ].strip(" ,") + + self.cases.append( + { + "url": row.xpath("a")[0].get("href"), + "name": row.xpath("a")[0].text_content(), + "date": date_filed, + "citation": citation, + "docket": docket, + } + ) diff --git a/juriscraper/opinions/united_states/state/utahctapp.py b/juriscraper/opinions/united_states/state/utahctapp.py index 0fd0602f2..b55fea4b2 100644 --- a/juriscraper/opinions/united_states/state/utahctapp.py +++ b/juriscraper/opinions/united_states/state/utahctapp.py @@ -1,37 +1,8 @@ -import re -from urllib.parse import quote +from juriscraper.opinions.united_states.state import utah -from juriscraper.OpinionSiteLinear import OpinionSiteLinear - -class Site(OpinionSiteLinear): +class Site(utah.Site): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) - self.url = "https://www.utcourts.gov/opinions/appopin/index.htm" + self.url = "https://legacy.utcourts.gov/opinions/appopin/" self.court_id = self.__module__ - self.regex = r"Case No. (.*?), Filed (.*?), (\d{4} UT App \d+)" - - def _process_html(self) -> None: - for row in self.html.xpath("//a[@class='pdf']/parent::p"): - link = row.xpath("./a")[0] - x = " ".join(row.xpath(".//text()")).strip() - if "Superseded" in x: - continue - m = re.search(self.regex, x) - if not m: - continue - date = m.groups()[1] - if "Filed" in date: - date = date.replace("Filed", "").strip() - citation = m.groups()[2] - docket_number = m.groups()[0] - self.cases.append( - { - "date": date, - "name": row.xpath(".//text()")[0], - "citation": citation, - "url": quote(link.attrib["href"], safe=":/"), - "docket": docket_number, - "status": "Published", - } - ) diff --git a/tests/examples/opinions/united_states/utah_example.compare.json b/tests/examples/opinions/united_states/utah_example.compare.json index c4be98370..51578984c 100644 --- a/tests/examples/opinions/united_states/utah_example.compare.json +++ b/tests/examples/opinions/united_states/utah_example.compare.json @@ -1,145 +1,442 @@ [ { - "case_dates": "2014-05-13", - "case_names": "State v. Lucero", - "download_urls": "tests/examples/opinions/united_states/Lucero141520140513.pdf", + "case_dates": "2024-10-24", + "case_names": "League of Women Voters v. Utah State Legislature", + "download_urls": "tests/examples/opinions/united_states/League of Women Voters v. Utah State Legislature20241024.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20090751", - "citations": "2014 UT 15", - "case_name_shorts": "Lucero" + "docket_numbers": "Case No. 20240965", + "citations": "2024 UT 40", + "case_name_shorts": "" + }, + { + "case_dates": "2024-10-10", + "case_names": "Hideout v. Summit County", + "download_urls": "tests/examples/opinions/united_states/Hideout v. Summit County20241010.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220573", + "citations": "2024 UT 39", + "case_name_shorts": "Hideout" + }, + { + "case_dates": "2024-09-05", + "case_names": "State v. Willden", + "download_urls": "tests/examples/opinions/united_states/State v. Willden20240905.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220747", + "citations": "2024 UT 37", + "case_name_shorts": "Willden" + }, + { + "case_dates": "2024-09-05", + "case_names": "Bingham v. Gourley", + "download_urls": "tests/examples/opinions/united_states/Bingham v. Gourley20240905.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20230436", + "citations": "2024 UT 38", + "case_name_shorts": "Bingham" + }, + { + "case_dates": "2024-08-15", + "case_names": "State v. Chadwick", + "download_urls": "tests/examples/opinions/united_states/State v. Chadwick20240815.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20190818", + "citations": "2024 UT 34", + "case_name_shorts": "Chadwick" + }, + { + "case_dates": "2024-08-15", + "case_names": "State v. Baugh", + "download_urls": "tests/examples/opinions/united_states/State v. Baugh20240815.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220272", + "citations": "2024 UT 33", + "case_name_shorts": "Baugh" + }, + { + "case_dates": "2024-08-15", + "case_names": "Lyman v. Cox", + "download_urls": "tests/examples/opinions/united_states/Lyman v. Cox20240824.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20240824", + "citations": "2024 UT 35", + "case_name_shorts": "Lyman" + }, + { + "case_dates": "2024-08-15", + "case_names": "Jenkins v. Beaver County", + "download_urls": "tests/examples/opinions/united_states/Jenkins v. Beaver County20240815.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20250815", + "citations": "2024 UT 36", + "case_name_shorts": "Jenkins" + }, + { + "case_dates": "2024-08-08", + "case_names": "Sports Medicine Research v. Tax Commission", + "download_urls": "tests/examples/opinions/united_states/Sports Medicine Research v. Tax Commission20240808.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220786", + "citations": "2024 UT 29", + "case_name_shorts": "" + }, + { + "case_dates": "2024-08-08", + "case_names": "Nelson v. Phillips", + "download_urls": "tests/examples/opinions/united_states/Nelson v. Phillips20240808.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20230025", + "citations": "2024 UT 30", + "case_name_shorts": "Phillips" + }, + { + "case_dates": "2024-08-08", + "case_names": "Jane Does v. Broadbent", + "download_urls": "tests/examples/opinions/united_states/Jane Does v. Broadbent20240808.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220917", + "citations": "2024 UT 31", + "case_name_shorts": "Broadbent" + }, + { + "case_dates": "2024-08-08", + "case_names": "D.W. v. FPA Sandy Mall Associates", + "download_urls": "tests/examples/opinions/united_states/D.W. v. FPA Sandy Mall Associates20240808.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20230196", + "citations": "2024 UT 32", + "case_name_shorts": "D.W." + }, + { + "case_dates": "2024-08-01", + "case_names": "Thompson v. State", + "download_urls": "tests/examples/opinions/united_states/Thompson v. State20240801.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220949", + "citations": "2024 UT 27", + "case_name_shorts": "Thompson" + }, + { + "case_dates": "2024-08-01", + "case_names": "Planned Parenthood Association v. State", + "download_urls": "tests/examples/opinions/united_states/Planned Parenthood Association v. State20240801.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220696", + "citations": "2024 UT 28", + "case_name_shorts": "" + }, + { + "case_dates": "2024-07-25", + "case_names": "State v. Lovell", + "download_urls": "tests/examples/opinions/united_states/State v. Lovell20240725.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20150632", + "citations": "2024 UT 25", + "case_name_shorts": "Lovell" + }, + { + "case_dates": "2024-07-25", + "case_names": "In re A.H...", + "download_urls": "tests/examples/opinions/united_states/In re A.H...20240725.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20221029", + "citations": "2024 UT 26", + "case_name_shorts": "In re A.H..." + }, + { + "case_dates": "2024-07-18", + "case_names": "Wittingham v. TNE Limited Partnership", + "download_urls": "tests/examples/opinions/united_states/Wittingham v. TNE Limited Partnership20240718.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20210677", + "citations": "2024 UT 23", + "case_name_shorts": "Wittingham" + }, + { + "case_dates": "2024-07-18", + "case_names": "Mulligan v. Alum Rock Riverside", + "download_urls": "tests/examples/opinions/united_states/Mulligan v. Alum Rock Riverside20240718.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20221024", + "citations": "2024 UT 22", + "case_name_shorts": "Mulligan" + }, + { + "case_dates": "2024-07-18", + "case_names": "Labrum v. Utah State Bar", + "download_urls": "tests/examples/opinions/united_states/Labrum v. Utah State Bar20240718.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20230173", + "citations": "2024 UT 24", + "case_name_shorts": "Labrum" + }, + { + "case_dates": "2024-07-11", + "case_names": "League of Women Voters v. Utah State Legislature", + "download_urls": "tests/examples/opinions/united_states/League of Women Voters v. Utah State Legislature20240711.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220991", + "citations": "2024 UT 21", + "case_name_shorts": "" + }, + { + "case_dates": "2024-07-11", + "case_names": "Grewal v. Junction Market Fairview", + "download_urls": "tests/examples/opinions/united_states/Grewal v. Junction Market Fairview20240711.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220822", + "citations": "2024 UT 20", + "case_name_shorts": "Grewal" + }, + { + "case_dates": "2024-06-27", + "case_names": "Phillips v. Henderson", + "download_urls": "tests/examples/opinions/united_states/Phillips v. Henderson20240627.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20231098", + "citations": "2024 UT 19", + "case_name_shorts": "Phillips" + }, + { + "case_dates": "2024-06-27", + "case_names": "Gordon v. Nostrom", + "download_urls": "tests/examples/opinions/united_states/Gordon v. Nostrom20240627.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20230187", + "citations": "2024 UT 18", + "case_name_shorts": "Gordon" + }, + { + "case_dates": "2024-06-13", + "case_names": "Bleazard v. Henderson", + "download_urls": "tests/examples/opinions/united_states/Bleazard v. Henderson20240613.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20221009", + "citations": "2024 UT 17", + "case_name_shorts": "Bleazard" + }, + { + "case_dates": "2024-06-13", + "case_names": "Bleazard v. City of Erda", + "download_urls": "tests/examples/opinions/united_states/Bleazard v. City of Erda20240613.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20221008", + "citations": "2024 UT 17", + "case_name_shorts": "Bleazard" + }, + { + "case_dates": "2024-06-06", + "case_names": "In re Estate of Goldberg", + "download_urls": "tests/examples/opinions/united_states/In re Estate of Goldberg20240606.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220372", + "citations": "2024 UT 15", + "case_name_shorts": "" + }, + { + "case_dates": "2024-05-16", + "case_names": "Bennion v. Stolrow", + "download_urls": "tests/examples/opinions/united_states/Bennion v. Stolrow20240516.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20220901", + "citations": "2024 UT 14", + "case_name_shorts": "Bennion" }, { - "case_dates": "2014-05-13", - "case_names": "Dillon v. Southern Management", - "download_urls": "tests/examples/opinions/united_states/Dillon141220140513.pdf", + "case_dates": "2024-05-02", + "case_names": "State v. Smith", + "download_urls": "tests/examples/opinions/united_states/State v. Smith20240502.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20120145", - "citations": "2014 UT 14 AMENDED OPINION", - "case_name_shorts": "Dillon" + "docket_numbers": "Case No. 20220768", + "citations": "2024 UT 13", + "case_name_shorts": "" }, { - "case_dates": "2014-05-09", - "case_names": "Energy Claims v. Catalyst Investment", - "download_urls": "tests/examples/opinions/united_states/Energy_Claims141320140509.pdf", + "case_dates": "2024-04-25", + "case_names": "Kuhar v. Thompson Manufacturing", + "download_urls": "tests/examples/opinions/united_states/Kuhar v. Thompson Manufacturing20240425.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20120156", - "citations": "2014 UT 13", + "docket_numbers": "Case No. 20220282", + "citations": "2024 UT 12", + "case_name_shorts": "Kuhar" + }, + { + "case_dates": "2024-04-18", + "case_names": "Salt Lake Co v. Tax Commission", + "download_urls": "tests/examples/opinions/united_states/Salt Lake Co v. Tax Commission20240418.pdf", + "precedential_statuses": "Published", + "blocked_statuses": false, + "date_filed_is_approximate": false, + "docket_numbers": "Case No. 20210938", + "citations": "2024 UT 11", "case_name_shorts": "" }, { - "case_dates": "2014-04-29", - "case_names": "State v. Nielsen", - "download_urls": "tests/examples/opinions/united_states/Nielsen14102014429.pdf", + "case_dates": "2024-03-14", + "case_names": "State v. Clara", + "download_urls": "tests/examples/opinions/united_states/State v. Clara20240314.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20080709", - "citations": "2014 UT 10", - "case_name_shorts": "Nielsen" + "docket_numbers": "Case No. 20220325", + "citations": "2024 UT 10", + "case_name_shorts": "Clara" }, { - "case_dates": "2014-04-29", - "case_names": "State v. Gutierrez-Perez", - "download_urls": "tests/examples/opinions/united_states/GutierrezPerez14112014429.pdf", + "case_dates": "2024-03-07", + "case_names": "Sunstone Realty v. Bodell Construction", + "download_urls": "tests/examples/opinions/united_states/Sunstone Realty v. Bodell Construction20240307.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20120455", - "citations": "2014 UT 11", - "case_name_shorts": "Gutierrez-Perez" + "docket_numbers": "Case No. 20230285", + "citations": "2024 UT 9", + "case_name_shorts": "" }, { - "case_dates": "2014-03-07", - "case_names": "State of Utah v. Manatau", - "download_urls": "tests/examples/opinions/united_states/Manatau030714.pdf", + "case_dates": "2024-03-07", + "case_names": "Miller Theatres v. Tax Commission", + "download_urls": "tests/examples/opinions/united_states/Miller Theatres v. Tax Commission20240307.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20100908", - "citations": "2014 UT 7", - "case_name_shorts": "Manatau" + "docket_numbers": "Case No. 20220345", + "citations": "2024 UT 8", + "case_name_shorts": "" }, { - "case_dates": "2014-03-07", - "case_names": "Baird v. Baird", - "download_urls": "tests/examples/opinions/united_states/Baird030714.pdf", + "case_dates": "2024-02-29", + "case_names": "State v. Tran", + "download_urls": "tests/examples/opinions/united_states/State v. Tran20240229.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20120488", - "citations": "2014 UT 8", - "case_name_shorts": "Baird" + "docket_numbers": "Case No. 20220560", + "citations": "2024 UT 7", + "case_name_shorts": "Tran" }, { - "case_dates": "2014-02-25", - "case_names": "Ramsay v. Kane County", - "download_urls": "tests/examples/opinions/united_states/Ramsay140522514.pdf", + "case_dates": "2024-02-22", + "case_names": "In re Adoption of M.A.", + "download_urls": "tests/examples/opinions/united_states/In re Adoption of M.A.20240222.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20120349", - "citations": "2014 UT 5", - "case_name_shorts": "Ramsay" + "docket_numbers": "Case No. 20221097", + "citations": "2024 UT 6", + "case_name_shorts": "" }, { - "case_dates": "2014-02-25", - "case_names": "Carlton v. Brown", - "download_urls": "tests/examples/opinions/united_states/Carlton140622514.pdf", + "case_dates": "2024-02-15", + "case_names": "Peng v. Meeks", + "download_urls": "tests/examples/opinions/united_states/Peng v. Meeks20240215.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20120268", - "citations": "2014 UT 6", - "case_name_shorts": "Carlton" + "docket_numbers": "Case No. 20220815", + "citations": "2024 UT 5", + "case_name_shorts": "Peng" }, { - "case_dates": "2014-02-07", - "case_names": "State v. Bagnes", - "download_urls": "tests/examples/opinions/united_states/Bagnes140421414.pdf", + "case_dates": "2024-02-08", + "case_names": "Park City v. Woodham", + "download_urls": "tests/examples/opinions/united_states/Park City v. Woodham20240208.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20100882", - "citations": "2014 UT 4", - "case_name_shorts": "Bagnes" + "docket_numbers": "Case No. 20230112", + "citations": "2024 UT 3", + "case_name_shorts": "Woodham" }, { - "case_dates": "2014-01-31", - "case_names": "Hughes v. Utah Labor Commission", - "download_urls": "tests/examples/opinions/united_states/Hughes140313114.pdf", + "case_dates": "2024-02-08", + "case_names": "Fine v. University of Utah", + "download_urls": "tests/examples/opinions/united_states/Fine v. University of Utah20240208.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20120426", - "citations": "2014 UT 3", - "case_name_shorts": "Hughes" + "docket_numbers": "Case No. 20220638", + "citations": "2024 UT 4", + "case_name_shorts": "Fine" }, { - "case_dates": "2014-01-28", - "case_names": "MacGregor v. Walker", - "download_urls": "tests/examples/opinions/united_states/MacGregor012814.pdf", + "case_dates": "2024-02-01", + "case_names": "State v. Paule", + "download_urls": "tests/examples/opinions/united_states/State v. Paule20240201.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20120452", - "citations": "2014 UT 2", - "case_name_shorts": "MacGregor" + "docket_numbers": "Case No. 20220039", + "citations": "2024 UT 2", + "case_name_shorts": "Paule" }, { - "case_dates": "2014-01-24", - "case_names": "State v. Bedell", - "download_urls": "tests/examples/opinions/united_states/Bedell012414.pdf", + "case_dates": "2024-01-11", + "case_names": "McKitrick v. Gibson", + "download_urls": "tests/examples/opinions/united_states/McKitrick v. Gibson20240111.pdf", "precedential_statuses": "Published", "blocked_statuses": false, "date_filed_is_approximate": false, - "docket_numbers": "20120692", - "citations": "2014 UT 1", - "case_name_shorts": "Bedell" + "docket_numbers": "Case No. 20220738", + "citations": "2024 UT 1", + "case_name_shorts": "McKitrick" } ] \ No newline at end of file diff --git a/tests/examples/opinions/united_states/utah_example.html b/tests/examples/opinions/united_states/utah_example.html index 331eed1a7..db9f153a8 100644 --- a/tests/examples/opinions/united_states/utah_example.html +++ b/tests/examples/opinions/united_states/utah_example.html @@ -1,342 +1,271 @@ - - - - - - - - - - - - - - - - - - - - - - Utah Courts - Utah Supreme Court Opinions - - - -

- - - - - -
-
- -
- -
- -
-
- - - - - - - - - - - -
-