Using GNU date and brute force:

<!-- language: bash -->

 start=20170101
 end=20170630
 cur=$start
 
 increment="1 day"
 while [ $(date +%s -d "$cur") -le $(date +%s -d "$end") ]
 do
 if [ "$(date +%A -d "$cur")" = "Saturday" ]
 then
 printf "%s\n" "$cur"
 increment="1 week"
 fi
 cur=$(date +%Y%m%d -d "$cur + $increment")
 done