|
1 |
| -import re |
2 |
| - |
3 | 1 | from city_scrapers_core.constants import BOARD
|
4 | 2 | from city_scrapers_core.spiders import CityScrapersSpider
|
5 | 3 |
|
6 |
| -from city_scrapers.mixins import CuyaCountyMixin |
| 4 | +from city_scrapers.mixins import CuyaCountyMixin2 |
7 | 5 |
|
8 | 6 |
|
9 |
| -class CuyaBoardRevisionSpider(CuyaCountyMixin, CityScrapersSpider): |
| 7 | +class CuyaBoardRevisionSpider(CuyaCountyMixin2, CityScrapersSpider): |
10 | 8 | name = "cuya_board_revision"
|
11 | 9 | agency = "Cuyahoga County Board of Revision"
|
12 |
| - start_urls = ["http://bc.cuyahogacounty.us/en-US/Board-of-Revision.aspx"] |
| 10 | + start_urls = [ |
| 11 | + "https://cuyahogacounty.gov/boards-and-commissions/board-details/internal/board-of-revision" # noqa |
| 12 | + ] |
13 | 13 | classification = BOARD
|
14 |
| - location = { |
15 |
| - "name": "County Headquarters, Room 2-101(G)", |
16 |
| - "address": "2079 East 9th St Cleveland, OH 44115", |
17 |
| - } |
18 |
| - |
19 |
| - def _parse_title(self, response): |
20 |
| - title_str = super()._parse_title(response) |
21 |
| - return title_str.replace("BOR", "Board of Revision") |
22 |
| - |
23 |
| - def _parse_location(self, response): |
24 |
| - loc_str = super()._parse_location(response) |
25 |
| - room_match = re.search( |
26 |
| - r"(room|rm)\.? [a-z0-9\-\(\)]+", loc_str or "", flags=re.I |
27 |
| - ) |
28 |
| - if not loc_str or "2-101" in loc_str or not room_match: |
29 |
| - return self.location |
30 |
| - room_str = room_match.group().strip() |
31 |
| - # Add conference room info to location name |
32 |
| - return { |
33 |
| - **self.location, |
34 |
| - "name": self.location["name"].replace("Room 2-101(G)", room_str), |
35 |
| - } |
0 commit comments