【发布时间】:2014-12-15 08:41:49
【问题描述】:
我正在开发一个用于学习目的的电子邮件爬虫 而且我无法理解如何运行任务并查看仍在后台运行的任务。
在我看来.py:
def home(request):
form = SignUpForm(request.POST or None)
if form.is_valid():
save_it= form.save(commit=False)
save_it.save()
messages.success(request,"Working, please wait........")
baseurl=form.cleaned_data['site']
maxemails=form.cleaned_data['max_emails']
maxurl=form.cleaned_data['max_links']
startcraw.delay(baseurl,maxurl,maxemails)
return HttpResponseRedirect('/done/')
#form not valid
return render_to_response("signup.html",locals(),context_instance=RequestContext(request))
在 tasks.py 我有:
from celery import task
from .craw import crawler
@task()
def startcraw(base,url,emails):
f = open('myfile','w')
f.write('hi there\n') # python will convert \n to os.linesep
f.close()
list= crawler(base,url,emails)
list.save()
我尝试使用写入文件行进行调试
我如何知道爬虫是否正在运行以及如何将结果保存/拉到我的数据库 (SQLite) 任何帮助将不胜感激
【问题讨论】:
-
不要使用
list作为变量名。