Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function handle()
- {
- $countries = [
- "SE",
- "NL",
- "GB",
- "US"
- ];
- foreach($countries as $country){
- foreach(array_merge(range(0, 9), range('A', 'Z')) as $char) {
- echo $country . " - " . $char . "\n";
- $offset = 0;
- $resultCount = 1;
- while($resultCount >0){
- $time = time();
- try{
- //This sometimes fails. If so, continue with next loop, we'll catch it next run
- $results = json_decode(\Httpful\Request::get("https://itunes.apple.com/search?limit=200&media=podcast&term=$char&country=$country&offset=" . $offset)->expectsJson()
- ->send());
- } catch(\ErrorException $e){
- unset($e);
- continue;
- }
- $offset = $offset + $results->resultCount;
- $resultCount = $results->resultCount;
- foreach($results->results as $result){
- try{
- if (!itunesshows::where("sitesid", "=", 26)->where("show_site_id", "=", $result->trackId)->exists()) {
- $x = new itunesshows();
- $x->sitesid = 26;
- $x->showname = $result->trackName;
- $x->show_site_id = $result->trackId;
- if(property_exists($result, "feedUrl")){
- $x->rss_url =$result->feedUrl;
- }else{
- $x->rss_url = "https://itunesu.itunes.apple.com/feed/id" . $result->trackId;
- }
- $x->podcast_channel = $result->artistName;
- $x->image_url = $result->artworkUrl600;
- $x->save();
- $predis = new Client();
- $predis->rPush("queue.itunes.get_episodes_from_show", json_encode($x));
- }
- } catch (\ErrorException $e){
- print_r($result);
- exit;
- }
- }
- print_r($resultCount . "\n");
- if(time() - $time < 3){
- sleep(1);
- }
- if(time() - $time < 3){
- sleep(1);
- }
- if(time() - $time < 3){
- sleep(1);
- }
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment