LWloli
LOLI仔
采纳率100%
2019-06-25 08:37 阅读 1.1k

请问可以把爬虫数据不经过数据库直接显示到html去吗?最近在学django框架

爬虫我写好了,html我也写了个简单的。但是我才学了django几天,它一般是通过调用数据库的数据的吧?

但是我爬虫的数据不必留在数据库的,我是打算两小时执行一次爬虫,然后结果输出到html上。暂时没想到解决的办法,请大神支招。

不清楚爬虫的py怎么放到django上去,或者说不知道放在哪。在views引用吗?应该不是在html和models里引用这个py吧?暂时只能想到放在views引用,然后把返回值传进html里了,不知道这样做对不对。

爬虫的数据是一个列表,return的东西是一个list,但是不知道怎么传进html页面。有具体一点的解析吗,最好有示例代码就好了。

定义的爬虫函数是Rankget,然后通过循环执行

if __name__ == "__main__":
    pool=multiprocessing.Pool(processes=4)
    for sku, url, cri in zip(skulist, urllist, crilist):
        pool.apply_async(Rankget.Rankget,(sku,url,cri))
    pool.close()
    pool.join()

然后就不知道怎么做了,我def里面的return的结果不知道怎么传进html去

是不是要再定义一个list,去list.append(pool.apply_async(Rankget.Rankget,(sku,url,cri)))这样?然后再传进去html?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • 已采纳
    zhenmu zhenmu 2019-06-27 16:17

    django 的一个页面的基本用法吧。

    就是请求一个页面,页面返回里render函数可以传递 list的

    比如有这个例子。
    views里的代码

    def home(request):
        TutorialList = ["HTML", "CSS", "jQuery", "Python", "Django"]
        return render(request, 'home.html', {'TutorialList': TutorialList})
    

    模板 html代码

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>基本的 for 循环 和 List内容的显示</title>
    </head>
    <body>
         <h1>教程列表:</h1>
        {% for i in TutorialList %}
        <h1>{{ i }}</h1>
        {% endfor %}
    </body>
    </html>
    

    原文:https://blog.csdn.net/gaoxiaoba/article/details/52469530

    如果list里有多级层次,自己嵌套,或者用.成员名 或者下标名。 比如 {{v.1}}

    点赞 评论 复制链接分享
  • mx472756841 战渣渣 2019-06-25 09:22

    爬的数据生成一个html页面,访问的时候直接访问对应的html页面也可以啊。

    点赞 评论 复制链接分享

相关推荐