def Main(): crw = CrawlerNE() paginas = crw.listar_paginas() noticias = crw.listar_noticias(paginas) for link in noticias: noticia = crw.obter_notia(link) try: Noticia.insert(noticia).execute() print("Noticía {} adicionada com sucesso.".format( noticia['Titulo'])) except peewee.IntegrityError: print("Noticía com o link {} já existe.".format(noticia['Link']))
def main(): client = MongoClient() db = client['diario_deportivo'] # categorias = [Categoria("Futbol").__dict__,Categoria("Tenis").__dict__,Categoria("Hokey").__dict__] # db.categorias.insert_many(categorias) cat_tenis = db.categorias.find_one({"nombre": "Tenis"}) cat_futbol = db.categorias.find_one({"nombre": "Futbol"}) # noticia = Noticia( # "Arriba la Torre", # "Juan Martín Del Potro arrancó bien en los primeros games, pero Bautista Agut se despertó y le peleó break a break el primer set, que el tandilense se lo terminó llemando por 7-5. Juan Martín va por el pase a las semifinales de singles. Se juega en el court 2 del Centro Olímpico.", # "aca va el cuerpo", # date.today().isoformat(), # cat_tenis["_id"], # None # ) # db.noticias.insert_one(noticia.__dict__); # noticia = Noticia( # "Sorpresa Decana", # "Vélez arrancó ganando con gol de Pavone, pero Juventud Unida de Gualeguaychú lo igualó sobre el final y, en los penales, venció al Fortín 4 a 3 y se metió en los octavos de la Copa Argentina.", # "aca va el cuerpo", # date.today().isoformat(), # cat_futbol["_id"], # None # ) # db.noticias.insert_one(noticia.__dict__); noticia = Noticia( "Listo Orion", "El arquero se hará este miércoles la revisión médica y luego firmará contrato por dos años con Racing. Con 35 años, Agustín reemplazará a Saja, como ocurrió en San Lorenzo. ", "aca va el cuerpo", date.today().isoformat(), cat_futbol["_id"]) db.noticias.insert_one(noticia.__dict__)
def ver_adicionar(): if request.method == "GET": #listar noticias existentes noticias = Noticia.objects().to_json() return Response(noticias, mimetype="application/json", status=200) elif request.method == "POST": #adicionar noticia body = request.get_json() noticia = Noticia(**body).save() sucesso = "Noticia adicionada com sucesso." return Response(sucesso, mimetype="application/json", status=200) else: return Response('Metodo Incorreto', mimetype="application/json", status=200)
def eventos(request, date_year = datetime.datetime.today().year): eventos_codesi = Evento.objects.filter(inicio__year = date_year).order_by('-pk') return render(request, 'actividad/eventos.html', {'eventos':Evento.get_eventos(), 'eventos_codesi':eventos_codesi, 'noticias' : Noticia.get_noticias(), 'app':'evento', 'informes':Informe.get_informes(),})
def informe(request, informe): informe = Informe.objects.get(pk = informe) return render(request, 'actividad/informe.html', {'eventos':Evento.get_eventos(), 'informe':informe, 'noticias':Noticia.get_noticias(), 'app':'informe', 'informes':Informe.get_informes(),})
def informes(request, date_year = datetime.datetime.today().year): informes_codesi = Informe.objects.filter(ano = str(date_year)).order_by('-pk') return render(request, 'actividad/informes.html', {'eventos':Evento.get_eventos(), 'informes_codesi':informes_codesi, 'noticias':Noticia.get_noticias(), 'app':'informe', 'informes':Informe.get_informes(),})
def noticia(request, noticia): noticia = Noticia.objects.get(pk = noticia) return render(request, 'actividad/noticia.html', {'eventos':Evento.get_eventos(), 'noticia':noticia, 'noticias' : Noticia.get_noticias(), 'app':'noticia', 'informes':Informe.get_informes(),})
def noticias(request, date_year = datetime.datetime.today().year): noticias_codesi = Noticia.objects.filter(fecha__year = date_year).order_by('-pk') return render(request, 'actividad/noticias.html', {'eventos':Evento.get_eventos(), 'noticias_codesi':noticias_codesi, 'noticias' : Noticia.get_noticias(), 'app':'noticia', 'informes':Informe.get_informes(),})
def crear_policial(): nueva = Noticia() nueva.titulo = 'nueva policial' nueva.texto = 'escriba aqui su noticia policial' nueva.fecha = datetime.now() nueva.categoria = Categoria.objects.get(nombre='policiales') nueva.save() return nueva
def alta_noticia(): if request.method == 'POST': categoria = Categoria(**mongo.db.categorias.find_one_or_404( {"nombre": request.form["categoria"]})) fecha = date.today().isoformat() noticia = Noticia(request.form["titulo"], request.form["copete"], request.form["cuerpo"], categoria._id, fecha) mongo.db.noticias.insert_one(noticia.__dict__) return redirect(url_for("index")) else: abort(404)
def Feed(): feed = AtomFeed('Últimas Noticías do Diário do Nordeste', feed_url=request.url, url=request.url_root) noticias = Noticia.select().order_by(Noticia.Data.desc()) for noticia in noticias: feed.add(noticia.Titulo, noticia.Corpo, id=noticia.id, content_type='html', author=noticia.Autor, url=noticia.Link, updated=noticia.Data) return feed.get_response()
import peewee from crawler import * from models import Noticia def Main(): crw = CrawlerNE() paginas = crw.listar_paginas() noticias = crw.listar_noticias(paginas) for link in noticias: noticia = crw.obter_notia(link) try: Noticia.insert(noticia).execute() print("Noticía {} adicionada com sucesso.".format( noticia['Titulo'])) except peewee.IntegrityError: print("Noticía com o link {} já existe.".format(noticia['Link'])) if __name__ == '__main__': if not Noticia.table_exists(): Noticia.create_table() print('Tabela Noticia Criada com Sucesso!') else: print('Tabela Noticia ja existe!') Main()
# from django.core.management import setup_environ # from globo.settings import settings # setup_environ(settings) from models import Noticia import feedparser # import urllib2 # import json from datetime import datetime from globo.util.funcoes import * feed = feedparser.parse('http://g1.globo.com/dynamo/rss2.xml') for item in feed.entries: try: noticia = Noticia.objects.get(link=item.link) break except Noticia.DoesNotExist: noticia = Noticia() noticia.titulo = item.title noticia.link = item.link noticia.id_materia, noticia.link_encurtado = getDadosMateria(item.link) noticia.getUrlEncodada() noticia.numero_comentarios = getNumeroDeComentarios(noticia.link_encodado) noticia.save()