Created
May 13, 2014 22:29
-
-
Save arm5077/42272a00d0b5f8edf62f to your computer and use it in GitHub Desktop.
2014 Pa. Democratic gubernatorial primary scraper
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?PHP | |
function getURL($url) | |
{ | |
// create curl resource | |
$ch = curl_init(); | |
// set url | |
curl_setopt($ch, CURLOPT_URL, $url); | |
//return the transfer as a string | |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); | |
//do redirects | |
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); | |
// $output contains the output string | |
$output = curl_exec($ch); | |
// close curl resource to free up system resources | |
curl_close($ch); | |
return $output; | |
} | |
$content = ""; | |
$export = Array(); | |
// Grab the three pages that contain election data | |
for($i=1; $i <= 3; $i++) { | |
$content .= getURL("http://www.electionreturns.state.pa.us/Default.aspx?EID=41&ESTID=1&CID=0&OID=3&CDID=0&PID=0&DISTID=1&IsSpecial=0&PageRefID=" . $i); | |
} | |
// Split into counties | |
$counties = explode("<hr", $content); | |
// For each county... | |
foreach($counties as $county){ | |
$start = 0; | |
$temp = Array(); | |
// Make sure this element actually has data | |
if(stripos( $county, '"officeTitle">')) { | |
// Get county name | |
$county_name = ucfirst(scrape($county, '"officeTitle">', "<BR>")); | |
// Jump to Democratic side | |
$start = stripos($county, "Democratic", $start); | |
// Loop through candidates | |
while( stripos($county, '"grdcandidateName">', $start) ) { | |
// Grab name | |
$candidate_name = ucfirst(scrape($county, '"grdcandidateName">', ",")); | |
// Grab number of votes | |
$votes = intval(scrape($county, 'grdcandidateVotes">', "</td>")); | |
// Insert candidate into temp array, later to be included in county array | |
$temp[] = Array("name" => $candidate_name, "votes" => $votes); | |
} | |
// Insert entry into county array | |
$export[] = Array("county" => $county_name, "candidates" => $temp); | |
} | |
} | |
// Print JSON | |
echo json_encode($export); | |
function scrape($source, $startPhrase, $endPhrase) { | |
global $start, $end; | |
$start = stripos($source, $startPhrase, $start) + strlen($startPhrase); | |
$end = stripos($source, $endPhrase, $start); | |
return (trim(substr($source, $start, $end - $start))); | |
} | |
?> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[ | |
{ | |
"county": "Adams", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Allegheny", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Armstrong", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Beaver", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Bedford", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Berks", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 0 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 0 | |
} | |
] | |
}, | |
{ | |
"county": "Blair", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Bradford", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Bucks", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 3 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 16 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 8 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 4 | |
} | |
] | |
}, | |
{ | |
"county": "Butler", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Cambria", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Cameron", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Carbon", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Centre", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Chester", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Clarion", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Clearfield", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Clinton", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Columbia", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Crawford", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Cumberland", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Dauphin", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Delaware", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Elk", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Erie", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Fayette", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Forest", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Franklin", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 0 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 0 | |
} | |
] | |
}, | |
{ | |
"county": "Fulton", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 0 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 0 | |
} | |
] | |
}, | |
{ | |
"county": "Greene", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Huntingdon", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Indiana", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Jefferson", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Juniata", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Lackawanna", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Lancaster", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 0 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 0 | |
} | |
] | |
}, | |
{ | |
"county": "Lawrence", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Lebanon", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Lehigh", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Luzerne", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Lycoming", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 0 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 0 | |
} | |
] | |
}, | |
{ | |
"county": "Mckean", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Mercer", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Mifflin", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Monroe", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Montgomery", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 0 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 0 | |
} | |
] | |
}, | |
{ | |
"county": "Montour", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Northampton", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Northumberland", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Perry", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Philadelphia", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Pike", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Potter", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Schuylkill", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 0 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 0 | |
} | |
] | |
}, | |
{ | |
"county": "Snyder", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Somerset", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Sullivan", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Susquehanna", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Tioga", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Union", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Venango", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Warren", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Washington", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Wayne", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 0 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 0 | |
} | |
] | |
}, | |
{ | |
"county": "Westmoreland", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 306 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 612 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 918 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "Wyoming", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 1 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 1 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 1 | |
} | |
] | |
}, | |
{ | |
"county": "York", | |
"candidates": [ | |
{ | |
"name": "WOLF", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCCORD", | |
"votes": 0 | |
}, | |
{ | |
"name": "MCGINTY", | |
"votes": 0 | |
}, | |
{ | |
"name": "SCHWARTZ", | |
"votes": 0 | |
} | |
] | |
} | |
] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment