古鸽或百度的镜子:
 
1、E:\django下建个文件夹名为搜索引擎→PyCharm新建项目选Django→location改为E:\django\搜索引擎→More Settings的Application写个search
***************分割线***************
2、项目文件夹搜索引擎:
 
①settings.py,只改语言和时区
 
②urls.py:
 
from django.conf.urls import url
from django.contrib import admin
from search import views
 
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^$', views.index),
    url(r'^s', views.so),  #搜索网址尾是?及各参数,不加/和$;百度是s,古鸽是search
    url(r'^search', views.so),
]
***************分割线***************
3、应用文件夹search:
 
①新建俩文件夹templates和static:templates里存放复制自谷鸽首页的googleIndex.html,和强子院子写的baiduIndex.html;static放images\so.gif等强子所做的百度前端样式。
******分割线******
②views.py:
 
from django.shortcuts import render
from django.http import HttpResponse
import requests
from fake_useragent import UserAgent
 
def copySearchEngineData(word):
    h = {'User-Agent': UserAgent().random}
    #static文件夹,若是和manage.py同级,则前无/;若用的是在某个应用内建的,则加/
    #html=requests.get('https://www.baidu.com%s' %word,headers=h).text
    #html=html.replace('//www.baidu.com/img/baidu_jgylogo3.gif','/static/images/so.gif')
    s = requests.session()
    javascript=s.get('https://xs5.rqiao.net', headers=h).text.split('cookie\' : "')[1].split('"')[0]
    s.cookies['verynginx_sign_javascript']=javascript
    html = s.get('https://xs5.rqiao.net%s' %word, headers=h).text
    oldLogo='/images/branding/googlelogo/2x/googlelogo_color_120x44dp.png'
    html=html.replace(oldLogo,'/static/images/so.gif')
    return html
 
def index(request):
    return render(request,'googleIndex.html')   #baiduIndex.html
 
def so(request):
    #word=request.GET['wd']    #取输入框的值:text框的name属性的值,百度是wd,古鸽是q
    word=request.get_full_path()  #取网址中不含域名的后半截
    result=copySearchEngineData(word)
    return HttpResponse(result) #展示的是html文件用render,网页源代码则用HttpResponse
******分割线******
③baiduIndex.html:
 
{% load static from staticfiles %}
 
<!doctype html>
<html>
    <head><meta charset="UTF-8"><title>百度镜像</title></head>
 
<body>
    <p style="text-align:center">
        <strong><span style="color:white;font-size:36px;">更纯净,无广告!</span>
        <span style="font-size:18px;color:green">绿色的网络搜索环境</span></strong>
    </p>
 
    <div style="margin:auto;text-align:center;line-height:360px">
        <form action="/s" method="get">
        <input type="text" name="wd" style="width:500px;height:40px">
        <input type="submit" value="百度一下" style="height:45px">
        </form>
    </div>
</body>
</html>

djangoの2的更多相关文章

  1. 异步任务队列Celery在Django中的使用

    前段时间在Django Web平台开发中,碰到一些请求执行的任务时间较长(几分钟),为了加快用户的响应时间,因此决定采用异步任务的方式在后台执行这些任务.在同事的指引下接触了Celery这个异步任务队 ...

  2. 《Django By Example》第四章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:祝大家新年快乐,这次带来<D ...

  3. django server之间通过remote user 相互调用

    首先,场景是这样的:存在两个django web应用,并且两个应用存在一定的联系.某些情况下彼此需要获取对方的数据. 但是我们的应用肯经都会有对应的鉴权机制.不会让人家随随便便就访问的对吧.好比上车要 ...

  4. Mysql事务探索及其在Django中的实践(二)

    继上一篇<Mysql事务探索及其在Django中的实践(一)>交代完问题的背景和Mysql事务基础后,这一篇主要想介绍一下事务在Django中的使用以及实际应用给我们带来的效率提升. 首先 ...

  5. Mysql事务探索及其在Django中的实践(一)

    前言 很早就有想开始写博客的想法,一方面是对自己近期所学知识的一些总结.沉淀,方便以后对过去的知识进行梳理.追溯,一方面也希望能通过博客来认识更多相同技术圈的朋友.所幸近期通过了博客园的申请,那么今天 ...

  6. 《Django By Example》第三章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:第三章滚烫出炉,大家请不要吐槽文中 ...

  7. 《Django By Example》第二章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:翻译完第一章后,发现翻译第二章的速 ...

  8. 《Django By Example》第一章 中文 翻译 (个人学习,渣翻)

    书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:本人目前在杭州某家互联网公司工作, ...

  9. Django

    一.Django 简介 Django 是一个由 Python 写成的开放源代码的 Web 应用框架.它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是 CMS(内容管理系统) ...

  10. Django admin定制化,User字段扩展[原创]

    前言 参考上篇博文,我们利用了OneToOneField的方式使用了django自带的user,http://www.cnblogs.com/caseast/p/5909248.html , 但这么用 ...

随机推荐

  1. 一.javascript核心部分:1.词法结构

    本文作为个人学习笔记,一直也没有重视javascript的系统学习(javascript是最容易被人忽视的语言),我都是要用的时候百度一下查找下资料开始用,但没有系统的,学习,和整理过javascri ...

  2. Windows 窗体

    Windows系统,顾名思义,就是窗口系统,每一个程序都可以用窗口来展示,所以,为了展示窗口,需要多做一系列的工作,当然,也有纯控制台应用,就不用附带窗口了. 首先就是窗口程序的入口地址,与传统的in ...

  3. 搞搞电脑微信表情的破解(.dat转png or jpg)

    首先感谢:https://blog.csdn.net/weixin_42440768/ 因为狗子喜欢之前那个头像,但是没找到,于是我想看看我们之前的斗图过程中有没有发她的头像. 这是做这件事情的起因. ...

  4. Linux镜像清理日志操作

    1.安全 没有其他用户 查看 ll  /home下没有其他用户 2.清理日志 rm -rf /root/* rm -rf /tmp/* rm -rf /etc/udev/rules.d/persist ...

  5. 词根:lun = moon, 表示“月亮”

    词根:lun = moon, 表示“月亮” lunar [lun月亮,-ar形容词后缀,…的] 月亮的,太阴的,似月的,新月形的 semilunar [semi-半,lun月亮,-ar形容词后缀,…的 ...

  6. MySQL主主

    MySQL双主(主主)架构方案   在企业中,数据库高可用一直是企业的重中之重,中小企业很多都是使用mysql主从方案,一主多从,读写分离等,但是单主存在单点故障,从库切换成主库需要作改动.因此,如果 ...

  7. vuex中store保存的数据,刷新页面会清空

    用vuex,项目中需要记录一些状态,来判断页面是否为登录状态和页面是否可被编辑,此时用到了vuex中的store来存储一个状态. //首先 安装vuex npm install vuex --save ...

  8. How to Reset VW Steering Assist 1S1909144P with OBDSTAR X300 DP

    Vehicle model:VW Polo 2015 (or other Audi, Seat, Skoda, VW with unit 1S1 909 144 P) Module:Control u ...

  9. Chapter_3_JAVA作业

    第三章 一 .课前预习 1.1 简述概念,什么是类?什么是对象? 类:在Java中是一种重要的复合数据类型,是组成类的基本要素.(把众多的事物规划,划分成一类是人类在认识个观世界时采用的思维方法). ...

  10. GUI学习之二——PyQt控件初识

    一.控件概念 控件是一个程序界面上的各个独立的元素, 它具备用户点击.接收用户输入.展示不同内容.存放其他控件等功能. 二.控件分类 常用的控件按功能可以分为以下几种类 按钮 QPushButton— ...