--- a/admin/partialdata/scraper.php +++ b/admin/partialdata/scraper.php @@ -1,1 +1,49 @@ += 1024 && $i < 4; $i++) $size /= 1024; + return round($size, 2).$units[$i]; +} + +$days = 4; +if (isset($_REQUEST['days'])) $days = $_REQUEST['days']; +$startDate = strtotime("18-Nov-2007"); +if (isset($_REQUEST['startDate'])) $startDate = $_REQUEST['startDate']; +function getFile($startDate, $days, $minVal, $maxVal) { + $endDate = strtotime(date("Y-m-d", $startDate)." +".$days." days"); +$file = date("dMY",$startDate).'to'.date("dMY",$endDate).'val'.$minVal.'to'.$maxVal.'.xls'; +echo "Fetching $file ($days days) ($minVal < value < $maxVal )... "; +$url = "https://www.tenders.gov.au/?event=public.advancedsearch.CNSONRedirect&type=cnEvent&atmType=archived%2Cclosed%2Cpublished%2Cproposed&agencyUUID=&agencyStatus=-1&portfolioUUID=&keyword=&KeywordTypeSearch=AllWord&CNID=&dateType=Publish+Date&dateStart=".date("d-M-Y",$startDate)."&dateEnd=".date("d-M-Y",$endDate)."&supplierName=&supplierABN=&valueFrom=".$minVal."&valueTo=".$maxVal."&ATMID=&AgencyRefId=&consultancy=&download=Download+results"; +echo ""; +$current = file_get_contents($url); +if (strpos($current,"Your search returned more than 1000 results.") === false) { + file_put_contents($file, $current); + echo "$file saved
"; + echo format_bytes(filesize($file))."
"; + echo 'Load next '.($days).' days
'; + echo 'Load next '.($days*2).' days
'; + echo 'Load next '.($days).' days with split
'; + flush(); + return true; +} else { + echo "Too many records!
"; + echo 'Load '.($days/2).' days instead?
'; + echo 'Split instead?
'; + flush(); + return false; +} +} +if (isset($_REQUEST['split'])) { + getFile($startDate, $days, 0, 16000); + getFile($startDate, $days, 16000, 20000); +getFile($startDate, $days, 20000, 30000); +getFile($startDate, $days, 30000, 40000); + getFile($startDate, $days, 40000, 80000); + getFile($startDate, $days, 80000, 300000); + getFile($startDate, $days, 300000, 999999999); +} else { + getFile($startDate, $days, "" , ""); +} +?>