html头部

{% extends 'base.html' %}
{% load static %}
{% block title %}小说首页{% endblock %}

{% block content %}

    <div id="headerbox">
        <h1 class="logo left"><a href="#"><img src="{% static 'imgs/logo.png' %}">
            <p>免费小说网</p></a></h1>
        <ul class="nav right">
            <li><a href="" data-toggle="modal" data-target="#myModal">
                登录
            </a></li>
            <li><a href="" data-toggle="modal" data-target="#myModal">
                注册
            </a></li>
            <li><a href="" data-toggle="modal" data-target="#myModal">
                充值
            </a></li>
        </ul>
    </div>
    <div class="nav1">
        <ul>
            <li><a href="#">在线书库</a>
                <ul>
                    <li><a href="#">绝地求生之冷面枪神</a></li>
                    <li><a href="#">生死狙击之实验的末日</a></li>
                    <li><a href="#">午夜电视机</a></li>
                    <li><a href="#">医神的美女军团</a></li>
                </ul>
            </li>
            <li><a href="#">VIP小说</a>
                <ul>
                    <li><a href="#">漫威之我是大蛇</a></li>
                    <li><a href="#">百岁之后系统才激活</a></li>
                    <li><a href="#">末日之神级充钱系统</a></li>
                    <li><a href="#">重生乾隆王朝</a></li>
                </ul>
            </li>
            <li><a href="#">下载书库</a>
                <ul>
                    <li><a href="#">修真之异界金仙</a></li>
                    <li><a href="#">柯南之白枫</a></li>
                    <li><a href="#">僵尸的摄魂笔记</a></li>
                    <li><a href="#">重生炎尊</a></li>
                    <li><a href="#">鸿蒙创世决</a></li>
                </ul>
            </li>
            <li><a href="#">包月书库</a>
                <ul>
                    <li><a href="#">龙神系列之火凤天下</a></li>
                    <li><a href="#">炮灰的腹黑重生</a></li>
                    <li><a href="#">相守一生</a></li>
                    <li><a href="#">十二殿之乱世殇</a></li>
                    <li><a href="#">云之界幻云使</a></li>
                </ul>
            </li>
            <li><a href="#">排行榜</a>
                <ul>
                    <li><a href="#">小说人气排行榜</a></li>
                    <li><a href="#">小说鲜花排行榜</a></li>
                    <li><a href="#">小说收藏排行榜</a></li>
                    <li><a href="#">小说字数排行榜</a></li>
                </ul>
            </li>
        </ul>
    </div>
    <!-- 模态框(Modal) -->
    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
                    <h4 class="modal-title" id="myModalLabel"></h4>
                </div>
                <div class="modal-body">
                    <form class="form-horizontal" role="form">
                        <div class="form-group">
                            <label for="firstname" class="col-sm-2 control-label">昵称</label>
                            <div class="col-sm-10">
                                <input type="text" class="form-control" id="firstname" placeholder="请输入昵称">
                            </div>
                        </div>
                        <div class="form-group">
                            <label for="lastname" class="col-sm-2 control-label">密码</label>
                            <div class="col-sm-10">
                                <input type="text" class="form-control" id="lastname" placeholder="请输入密码">
                            </div>
                        </div>
                        <div class="form-group">
                            <div class="col-sm-offset-2 col-sm-10">
                                <div class="checkbox">
                                    <label>
                                        <input type="checkbox">记住密码
                                    </label>
                                </div>
                            </div>
                        </div>
                        <div class="form-group">
                            <div class="col-sm-offset-2 col-sm-10">
                                <button type="submit" class="btn btn-default">登录</button>
                                <button type="submit" class="btn btn-default">注册</button>
                            </div>
                        </div>
                    </form>
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
                </div>
            </div><!-- /.modal-content -->
        </div><!-- /.modal-dialog -->
    </div>
{% endblock %}

  

css样式

/*@charset "gb2312";*/
/**
 +------------------------------------------------------------------------------
 * 开始网站样式重写(初始化)
 +------------------------------------------------------------------------------
 */
html {
    -webkit-text-size-adjust: none; /*解决chrome浏览器下字体不能小于12px*/
}

body {
    color: #333;
    font-family: "微软雅黑", Verdana, Arial, Helvetica, sans-serif;
    background-color: #f8f8f8
}

a {
    outline: none;
    text-decoration: none;
    color: #333
}

a:hover {
    text-decoration: none;
    color: #4581e6
}

a:active {
    star: expression(this.onFocus=this.blur());
}

a:focus {
    outline: 0;
}

html {
    zoom: 1;
}

html * {
    outline: 0;
    zoom: 1;
}

html button::-moz-focus-inner {
    border-color: transparent !important;
}

body {
    font-size: 14px;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
    margin: 0;
    padding: 0;
}

table {
    /*border-collapse:collapse;border-spacing:0;*/
}

fieldset, a img {
    border: 0;
}

address, caption, cite, code, dfn, em, th, var {
    font-style: normal;
    font-weight: normal;
}

li {
    list-style: none;
}

caption, th {
    text-align: left;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}

q:before, q:after {
    content: '';
}

input[type="submit"], input[type="reset"], input[type="button"], button {
    -webkit-appearance: none; /*去掉苹果的默认UI来渲染按钮*/
}

em, i {
    font-style: normal;
}

/**
 +------------------------------------------------------------------------------
 * 结束网站样式重写(初始化)
 +------------------------------------------------------------------------------
 */

/**
 +------------------------------------------------------------------------------
 * Public Class
 +------------------------------------------------------------------------------
 */
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.clearfix {
    display: block;
}

.clear {
    clear: both;
}

/* 清除浮动*/

.colwrapper {
    overflow: hidden;
    zoom: 1 /*for ie*/;
    margin: 5px auto;
}

.strong {
    font-weight: bold;
}

.left {
    float: left;
    display: inline;
}

.right {
    float: right;
    display: inline;
}

.center {
    margin: 0 auto;
    text-align: center;
}

.show {
    display: block;
    visibility: visible;
}

.hide {
    display: none;
    visibility: hidden;
}

.block {
    display: block;
}

.inline {
    display: inline;
}

.transparent {
    filter: alpha(opacity=50);
    -moz-opacity: 0.5; /** Firefox 3.5即将原生支持opacity属性,所以本条属性只在Firefox3以下版本有效 ***/
    -khtml-opacity: 0.5;
    opacity: 0.5;
}

.break {
    word-wrap: break-word;
    overflow: hidden; /*word-break:break-all;*/
}

.tal {
    text-align: left
}

.tar {
    text-align: right;
}

/*文字两侧对齐*/
.justify {
    text-align: justify;
    text-justify: distribute-all-lines; /*ie6-8*/
    text-align-last: justify; /* ie9*/
    -moz-text-align-last: justify; /*ff*/
    -webkit-text-align-last: justify; /*chrome 20+*/
}

.toe {
    /*超出省略号*/
    word-break: keep-all;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
    /* chrome*/
    .justify:after {
        content: ".";
        display: inline-block;
        width: 100%;
        overflow: hidden;
        height: 0;
    }
}

em {
    font-style: italic !important;
}

strike {
    text-decoration: line-through !important;
}

strong {
    font-weight: bold !important;
    text-indent: 0;
}

u {
    text-decoration: underline !important;
}

#headerbox {
    float: right;
    position: absolute;
    z-index: -1; /*有position属性,越大越叠在顶上*/
    top: 0;
    left: 0;
    right: 0;
    height: 100px;
    background-color: #9E9E9E;
    box-shadow: 0 0 20px #999 /*添加阴影*/

}

#headerbox .logo {
    padding: 30px;
}

#headerbox .nav li {
    float: left;
    line-height: 80px;
    margin-right: 40px;
}

#headerbox .nav li a {
    color: black;
    font-size: 16px;
    background-color: #9e9e9e;
}

/*#headerbox .nav li button {*/
    /*background-color: #9e9e9e;*/
    /*border: none;*/
    /*color: black;*/
    /*padding: 3px;*/
    /*text-align: center;*/
    /*text-decoration: none;*/
    /*display: inline-block;*/
    /*font-size: 15px;*/
/*}*/
.nav1 {
    position: absolute;
    border-right: none;
    overflow: hidden;
    float: left;
    margin: -10px -10px -10px 200px;
    font-size: 15px;
}

.nav1 ul li {
    float: left;
}

.nav1 ul li a {
    width: 150px;
    height: 60px;
    text-align: center;
    line-height: 50px;
    display: block;
    border-right: 2px solid #9e9e9e;
    color: #666;
}

.nav1 ul li a:hover {
    color: #f00;
}

.nav1 ul li ul {
    position: fixed;
    display: none;
}

.nav1 ul li ul li {
    float: none;
}

.nav1 ul li ul li a {
    border-right: none;
}

.nav1 ul li:hover ul {
    display: block;
}

  base

<!DOCTYPE html>
{% load static %}
<html>
<head>
    <meta charset="utf-8">
    <title>{% block title %}Django 登录与注册{% endblock %}</title>

    <link rel="stylesheet" type="text/css" href="{% static 'css/bootstrap.min.css' %}">
    <link rel="stylesheet" type="text/css" href="{% static 'css/style.css' %}">
    <script type="text/javascript" src="{% static 'js/jquery.min.js' %}"></script>
    <script type="text/javascript" src="{% static 'js/bootstrap.min.js' %}"></script>
    <script type="text/javascript" src="{% static 'js/layer/layer.js' %}"></script>
    <script type="text/javascript" src="{% static 'js/myscript.js' %}"></script>

</head>
<body>

{#    {% if user.is_authenticated %}#}
{#        <a href="{% url 'logout' %}">登出</a>#}
{#    {% else %}#}
{#        <a href="{% url 'login' %}">登录</a> / <a href="{% url 'register' %}">登出</a>#}
{#    {% endif %}#}
<hr>
    {% block content %}
    {% endblock %}
</body>
</html>

 框架的url

"""novelnet URL Configuration

The `urlpatterns` list routes URLs to views. For more information please see:
    https://docs.djangoproject.com/en/1.11/topics/http/urls/
Examples:
Function views
    1. Add an import:  from my_app import views
    2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home')
Class-based views
    1. Add an import:  from other_app.views import Home
    2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')
Including another URLconf
    1. Import the include() function: from django.conf.urls import url, include
    2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))
"""
from django.conf.urls import url
from django.conf.urls import include
from django.contrib import admin

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^novelnet1/',include('novelnet1.urls'))
]

  

模块的url

from django.conf.urls import url
from django.contrib.auth import views as auth_views
from django.views.generic.base import TemplateView
from novelnet1 import views as core_views
from . import views

# app_name = 'app1'

urlpatterns = [

    # start login
    url(r'^$', TemplateView.as_view(template_name='home.html'), name='home'),

    url(r'^login/$', auth_views.login, {'template_name': 'login.html'}, name='login'),
    url(r'^logout/$', auth_views.logout, {'template_name': 'logged_out.html'}, name='logout'),
    # end login

    # start register
    url(r'^register/$', core_views.register, name='register'),
    # end register

    url(r'^testform/$', views.testform, name='testform'),

]

  

用python做小说网站的更多相关文章

  1. 我用Python实现了一个小说网站雏形

    前言 前段时间做了一个爬取妹子套图的小功能,小伙伴们似乎很有兴趣,为了还特意组建了一个Python兴趣学习小组,来一起学习.十个python九个爬,在大家的印象中好像Python只能做爬虫.然而并非如 ...

  2. python爬虫之小说网站--下载小说(正则表达式)

    python爬虫之小说网站--下载小说(正则表达式) 思路: 1.找到要下载的小说首页,打开网页源代码进行分析(例:https://www.kanunu8.com/files/old/2011/244 ...

  3. 初次尝试python爬虫,爬取小说网站的小说。

    本次是小阿鹏,第一次通过python爬虫去爬一个小说网站的小说. 下面直接上菜. 1.首先我需要导入相应的包,这里我采用了第三方模块的架包,requests.requests是python实现的简单易 ...

  4. 使用django+mysql+scrapy制作的一个小说网站

    小说网站用的程序都是千篇一律的,jieqi + guanguang,无聊时间学习python+django,也做了一个小说网站,下面说一说做这个网站一些过程, 制作这种采集站,最要紧的是要有一个好的采 ...

  5. React + Python 七月小说网 启程(一)

    一.为啥要做这个网站 很久没有写技术相关的博客了,最近几个月忙飞,各种工作,技术根本学不完,很难受. 趁着春节期间,终于有空闲时间做自己爱做的事情了,美滋滋. 热爱技术,热爱小说,于是诞生了个这么玩意 ...

  6. 12岁的少年教你用Python做小游戏

    首页 资讯 文章 频道 资源 小组 相亲 登录 注册       首页 最新文章 经典回顾 开发 设计 IT技术 职场 业界 极客 创业 访谈 在国外 - 导航条 - 首页 最新文章 经典回顾 开发 ...

  7. python urllib2 模拟网站登陆

    python urllib2 模拟网站登陆 1. 可用浏览器先登陆,然后查看网页源码,分析登录表单 2. 使用python urllib2,cookielib 模拟网页登录 import urllib ...

  8. python爬虫小说代码,可用的

    python爬虫小说代码,可用的,以笔趣阁为例子,python3.6以上,可用 作者的QQ:342290433,汉唐自远工程师 import requests import refrom lxml i ...

  9. What exactly can you do with Python? Here are Python’s 3 main applications._你能用Python做什么?下面是Python的3个主要应用程序。

    原文链接 Github地址 一.陈述 1,我到底能用Python做什么? 我观察注意到Python三个主要流行的应用: 网站开发: 数据科学——包括机器学习,数据分析和数据可视化: 做脚本语言. 二. ...

随机推荐

  1. mysql更新某个字符串字段的部分内容

    如果现在需要Mysql更新字段重部分数据,而不是全部数据,应该采用何种方法呢?下面介绍了两种情况下Mysql更新字段中部分数据的方法,供您参考. Mysql更新字段中部分数据第一种情况: update ...

  2. 代码与编程(java基础)

    代码与编程(面试与笔试java) 1.写一个Singleton出来 Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在. 一般Singleton模式通常有几种种 ...

  3. Redis学习——Redis持久化之AOF备份方式保存数据

    新技术的出现一定是在老技术的基础之上,并且完善了老技术的某一些不足的地方,新技术和老技术就如同JAVA中的继承关系.子类(新技术)比父类(老技术)更加的强大! 在前面介绍了Redis学习--Redis ...

  4. vue实例讲解之vuex的使用

    vuex是一个状态管理插件,本文通过一个简单的实例来讲解一下,vuex的使用. 先看一张官方的图: 这个图新手一看估计是蒙的,简单解释一下,这个图表示的就是vue通过Action Mutations ...

  5. 使用java实现面向对象-File I/O

    java.io.File类用于表示文件(目录) File类只用于表示文件(目录)的信息(名称.大小等),不能用于文件内容的访问 RandomAccessFile java提供的对文件内容的访问,既可以 ...

  6. Entity Framework Code First实现乐观并发

    Entity Framework Code First实现乐观并发 不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译自: h ...

  7. 【转】 Python subprocess模块学习总结

    从Python 2.4开始,Python引入subprocess模块来管理子进程,以取代一些旧模块的方法:如 os.system.os.spawn*.os.popen*.popen2.*.comman ...

  8. c# gdi+输出成不同mime类型的图片

    /// <summary> /// 通过图片的mime类型得到相应的编码器 /// </summary> /// <param name="mimeType&q ...

  9. bzoj1812 [Ioi2005]riv

    riv 几乎整个Byteland王国都被森林和河流所覆盖.小点的河汇聚到一起,形成了稍大点的河.就这样,所有的河水都汇聚并流进了一条大河,最后这条大河流进了大海.这条大河的入海口处有一个村庄--名叫B ...

  10. Anroid四大组件service之本地服务

    服务是Android四大组件之一,与Activity一样,代表可执行程序.但Service不像Activity有可操作的用户界面,它是一直在后台运行.用通俗易懂点的话来说: 如果某个应用要在运行时向用 ...