prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  primanti_bros_us: switch to YextSpider as Where2GetIt seemingly no longer used
  The store locator at `https://restaurants.primantibros.com/search` now uses Yext APIs for querying store locations, not Where2GetIt.
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `locations/spiders/primanti_bros_us.py`
  Content:
  ```
  1 from locations.categories import Extras, apply_yes_no
  2 from locations.hours import DAYS_FULL, OpeningHours
  3 from locations.storefinders.where2getit import Where2GetItSpider
  4 
  5 
  6 class PrimantiBrosUSSpider(Where2GetItSpider):
  7     name = "primanti_bros_us"
  8     item_attributes = {"brand": "Primanti Bros", "brand_wikidata": "Q7243049"}
  9     api_brand_name = "primantibros"
  10     api_key = "7CDBB1A2-4AC6-11EB-932C-8917919C4603"
  11 
  12     def parse_item(self, item, location):
  13         item["ref"] = location["uid"]
  14         item["street_address"] = ", ".join(filter(None, [location.get("address1"), location.get("address2")]))
  15         item["website"] = location.get("menuurl")
  16         item["opening_hours"] = OpeningHours()
  17         hours_string = ""
  18         for day_name in DAYS_FULL:
  19             hours_string = f"{hours_string} {day_name}: " + location["{}hours".format(day_name.lower())]
  20         item["opening_hours"].add_ranges_from_string(hours_string)
  21         apply_yes_no(Extras.DRIVE_THROUGH, item, location["has_drive_through"] == "1", False)
  22         yield item
  23
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/locations/spiders/primanti_bros_us.py b/locations/spiders/primanti_bros_us.py
  --- a/locations/spiders/primanti_bros_us.py
  +++ b/locations/spiders/primanti_bros_us.py
  @@ -1,22 +1,18 @@
  -from locations.categories import Extras, apply_yes_no
  -from locations.hours import DAYS_FULL, OpeningHours
  -from locations.storefinders.where2getit import Where2GetItSpider
  +from locations.categories import Categories
  +from locations.storefinders.yext import YextSpider
   
   
  -class PrimantiBrosUSSpider(Where2GetItSpider):
  +class PrimantiBrosUSSpider(YextSpider):
       name = "primanti_bros_us"
  -    item_attributes = {"brand": "Primanti Bros", "brand_wikidata": "Q7243049"}
  -    api_brand_name = "primantibros"
  -    api_key = "7CDBB1A2-4AC6-11EB-932C-8917919C4603"
  +    item_attributes = {"brand": "Primanti Bros", "brand_wikidata": "Q7243049", "extras": Categories.RESTAURANT.value}
  +    api_key = "7515c25fc685bbdd7c5975b6573c6912"
  +    api_version = "20220511"
   
       def parse_item(self, item, location):
  -        item["ref"] = location["uid"]
  -        item["street_address"] = ", ".join(filter(None, [location.get("address1"), location.get("address2")]))
  -        item["website"] = location.get("menuurl")
  -        item["opening_hours"] = OpeningHours()
  -        hours_string = ""
  -        for day_name in DAYS_FULL:
  -            hours_string = f"{hours_string} {day_name}: " + location["{}hours".format(day_name.lower())]
  -        item["opening_hours"].add_ranges_from_string(hours_string)
  -        apply_yes_no(Extras.DRIVE_THROUGH, item, location["has_drive_through"] == "1", False)
  +        if "test-location" in item["ref"]:
  +            return
  +        item["ref"] = location.get("c_pagesURL")
  +        item["name"] = location.get("c_searchName")
  +        item["website"] = location.get("c_pagesURL")
  +        item.pop("twitter", None)
           yield item
  
verification_info: {"golden_diff": "diff --git a/locations/spiders/primanti_bros_us.py b/locations/spiders/primanti_bros_us.py\n--- a/locations/spiders/primanti_bros_us.py\n+++ b/locations/spiders/primanti_bros_us.py\n@@ -1,22 +1,18 @@\n-from locations.categories import Extras, apply_yes_no\n-from locations.hours import DAYS_FULL, OpeningHours\n-from locations.storefinders.where2getit import Where2GetItSpider\n+from locations.categories import Categories\n+from locations.storefinders.yext import YextSpider\n \n \n-class PrimantiBrosUSSpider(Where2GetItSpider):\n+class PrimantiBrosUSSpider(YextSpider):\n     name = \"primanti_bros_us\"\n-    item_attributes = {\"brand\": \"Primanti Bros\", \"brand_wikidata\": \"Q7243049\"}\n-    api_brand_name = \"primantibros\"\n-    api_key = \"7CDBB1A2-4AC6-11EB-932C-8917919C4603\"\n+    item_attributes = {\"brand\": \"Primanti Bros\", \"brand_wikidata\": \"Q7243049\", \"extras\": Categories.RESTAURANT.value}\n+    api_key = \"7515c25fc685bbdd7c5975b6573c6912\"\n+    api_version = \"20220511\"\n \n     def parse_item(self, item, location):\n-        item[\"ref\"] = location[\"uid\"]\n-        item[\"street_address\"] = \", \".join(filter(None, [location.get(\"address1\"), location.get(\"address2\")]))\n-        item[\"website\"] = location.get(\"menuurl\")\n-        item[\"opening_hours\"] = OpeningHours()\n-        hours_string = \"\"\n-        for day_name in DAYS_FULL:\n-            hours_string = f\"{hours_string} {day_name}: \" + location[\"{}hours\".format(day_name.lower())]\n-        item[\"opening_hours\"].add_ranges_from_string(hours_string)\n-        apply_yes_no(Extras.DRIVE_THROUGH, item, location[\"has_drive_through\"] == \"1\", False)\n+        if \"test-location\" in item[\"ref\"]:\n+            return\n+        item[\"ref\"] = location.get(\"c_pagesURL\")\n+        item[\"name\"] = location.get(\"c_searchName\")\n+        item[\"website\"] = location.get(\"c_pagesURL\")\n+        item.pop(\"twitter\", None)\n         yield item\n", "issue": "primanti_bros_us: switch to YextSpider as Where2GetIt seemingly no longer used\nThe store locator at `https://restaurants.primantibros.com/search` now uses Yext APIs for querying store locations, not Where2GetIt.\n", "before_files": [{"content": "from locations.categories import Extras, apply_yes_no\nfrom locations.hours import DAYS_FULL, OpeningHours\nfrom locations.storefinders.where2getit import Where2GetItSpider\n\n\nclass PrimantiBrosUSSpider(Where2GetItSpider):\n    name = \"primanti_bros_us\"\n    item_attributes = {\"brand\": \"Primanti Bros\", \"brand_wikidata\": \"Q7243049\"}\n    api_brand_name = \"primantibros\"\n    api_key = \"7CDBB1A2-4AC6-11EB-932C-8917919C4603\"\n\n    def parse_item(self, item, location):\n        item[\"ref\"] = location[\"uid\"]\n        item[\"street_address\"] = \", \".join(filter(None, [location.get(\"address1\"), location.get(\"address2\")]))\n        item[\"website\"] = location.get(\"menuurl\")\n        item[\"opening_hours\"] = OpeningHours()\n        hours_string = \"\"\n        for day_name in DAYS_FULL:\n            hours_string = f\"{hours_string} {day_name}: \" + location[\"{}hours\".format(day_name.lower())]\n        item[\"opening_hours\"].add_ranges_from_string(hours_string)\n        apply_yes_no(Extras.DRIVE_THROUGH, item, location[\"has_drive_through\"] == \"1\", False)\n        yield item\n", "path": "locations/spiders/primanti_bros_us.py"}], "after_files": [{"content": "from locations.categories import Categories\nfrom locations.storefinders.yext import YextSpider\n\n\nclass PrimantiBrosUSSpider(YextSpider):\n    name = \"primanti_bros_us\"\n    item_attributes = {\"brand\": \"Primanti Bros\", \"brand_wikidata\": \"Q7243049\", \"extras\": Categories.RESTAURANT.value}\n    api_key = \"7515c25fc685bbdd7c5975b6573c6912\"\n    api_version = \"20220511\"\n\n    def parse_item(self, item, location):\n        if \"test-location\" in item[\"ref\"]:\n            return\n        item[\"ref\"] = location.get(\"c_pagesURL\")\n        item[\"name\"] = location.get(\"c_searchName\")\n        item[\"website\"] = location.get(\"c_pagesURL\")\n        item.pop(\"twitter\", None)\n        yield item\n", "path": "locations/spiders/primanti_bros_us.py"}]}