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. spark与hive的集成

    一:介绍 1.在spark编译时支持hive 2.默认的db 当Spark在编译的时候给定了hive的支持参数,但是没有配置和hive的集成,此时默认使用hive自带的元数据管理:Derby数据库. ...

  2. S2_OOP第二章

    第一章 继承 语法 修饰符 子类 extends 父类{ //类定义不封 } 使用extends继承父类的属性和方法.使用super关键字调用父类的方法. 概念 继承是面向对象的三大特特之一,Java ...

  3. wpf值转换器IValueConverter例子

    转载:http://blog.163.com/wangzhenguo2005@126/blog/static/37140526201085113430862/ 值转换器可以把一种类型转换成另一种类型. ...

  4. 在 Tomcat 8 部署多端口项目

    一般的部署途径 Tomcat 的部署途径很多,一般有如下几种: 直接将 War 包拷贝到 webapps 目录中,然后启动 Tomcat. 登陆 Tomcat 管理控制台http://localhos ...

  5. python爬虫之获取验证码登陆

    #--coding:utf-8#author:wuhao##这里我演示的就是本人所在学校的教务系统#import urllib.requestimport urllib.parseimport rei ...

  6. nodejs+mongoose操作mongodb副本集实例

    继上一篇设置mongodb副本集之后,开始使用nodejs访问mongodb副本集: 1:创建项目     express 项目名称 2:npm install mongoose    安装mongo ...

  7. android6.0 SerialPort 服务

    上一篇博客描述了一个简单的串口应用程序和驱动程序,了解了应用程序访问串口的基本操作,如打开串口,设置串口,写串口,读串口,关闭串口等.和Linux串口驱动的基本框架.这里将了解Android下的串口系 ...

  8. JQuery自定义插件详解之Banner图滚动插件

      前  言 JRedu JQuery是什么相信已经不需要详细介绍了.作为时下最火的JS库之一,JQuery将其"Write Less,Do More!"的口号发挥的极致.而帮助J ...

  9. Java继承--子父类中的构造函数

    子父类中的构造函数的特点: 1.在子类构造对象时,发现,访问子类构造函数时,父类构造函数也运行了.   原因是:在子类的构造函数中第一行有一个默认的隐式语句. super(); 类似于this(); ...

  10. Java加密与解密笔记(一) Base64和数据摘要算法

    对加密解密下面的内容一定要先理解: 甲乙双方要通信,中间的连接可能被人窃听甚至篡改.解决办法就是把传输的内容进行加密,用密文去传输,这样即使被监听也没办法知道信息的具体内容. 加密时,甲乙双方可以约定 ...