Faits : A. Ressortissante polonaise née le 14 janvier 1975, A._ est entrée en Suisse le 1 er juillet 2008 au bénéfice d'une autorisation de séjour de courte durée. Le 16 février 2010, elle a obtenu une autorisation de séjour UE/AELE valable jusqu'au 15 février 2015 en raison d'un contrat de travail à durée indéterminée. Par décision du 11 septembre 2014 entrée en force, l'office AI a estimé que A._ n'avait pas droit à une rente AI, car elle était déjà empêchée de travailler à 100% avant son entrée en Suisse. Le 29 mai 2015, le Service d'aide sociale de la Ville de Fribourg a informé le Service de la population et des migrants (ci-après: le Service cantonal) que A._ percevait une aide sociale mensuelle d'env. 1'755 fr. et que sa dette s'élevait à 76'063 fr. Le 14 septembre 2015, la Caisse de compensation a accordé à l'intéressée des prestations complémentaires de 2'750 fr. par mois. A._ n'a plus perçu d'aide sociale à compter du 10 août 2015 et elle a utilisé le versement de prestations complémentaires arriérées pour rembourser sa dette sociale. B. Après avoir informé A._ de son intention de ne pas prolonger son autorisation de séjour et avoir reçu la prise de position de cette dernière, le Service cantonal a, par décision du 21 avril 2016, refusé de prolonger son autorisation de séjour fondée sur le statut de travailleur européen et refusé de lui accorder une autorisation de séjour sans exercice d'une activité économique. Il a en outre prononcé son renvoi de Suisse. Par arrêt du 23 novembre 2016, le Tribunal cantonal a rejeté le recours interjeté par A._ contre la décision du 21 avril 2016. C. Agissant par la voie du recours en matière de droit public, A._ demande au Tribunal fédéral, sous suite de frais et dépens, d'annuler l'arrêt du 23 novembre 2016 du Tribunal cantonal et de renvoyer la cause à celui-ci pour instruction complémentaire dans le sens des considérants. Elle requiert l'assistance judiciaire. Il n'a pas été ordonné d'échange d'écritures.