位置: IT常识 - 正文

二挡起步——pythonweb开发Django框架,前端原生+Django后端框架+python网络抓包(代替数据库数据)(附带小案例)(二挡起步教程)

编辑:rootadmin
二挡起步——pythonweb开发Django框架,前端原生+Django后端框架+python网络抓包(代替数据库数据)(附带小案例)

推荐整理分享二挡起步——pythonweb开发Django框架,前端原生+Django后端框架+python网络抓包(代替数据库数据)(附带小案例)(二挡起步教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:二挡起步方法,二档起步方法,二挡起步的作用,二挡起步的作用,二挡起步怎么操作,二挡起步的作用,二挡起步的作用,二挡起步教程,内容如对您有帮助,希望把文章链接给更多的朋友!

 大家好,我是csdn的博主:lqj_本人

这是我的个人博客主页:

lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm=1011.2415.3001.5343哔哩哔哩欢迎关注:小淼Develop

小淼Develop的个人空间-小淼Develop个人主页-哔哩哔哩视频

本篇文章主要讲述:快速上手,pythonweb开发Django框架

目录

Django框架

工作机制

Django安装

pycharm创建Django项目

环境变量

Django项目创建app

创建templates文件

此时的Django项目结构为

创建urls连接前端路由

在app01文件中创建返回页面路由内容的函数

views.py

具体代码

前端页面

具体代码

运行Django项目

运行效果


Django框架

Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm=1011.2415.3001.5343手Django Reinhardt来命名的。

Django是高水准的Python编程语言驱动的一个开源模型.视图,控制器风格的Web应用程序框架,它起源于开源社区。使用这种架构,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。这也正是OpenStack的Horizon组件采用这种架构进行设计的主要原因。另外,在Dj ango框架中,还包含许多功能强大的第三方插件,使得Django具有较强的可扩展性 [2] 。Django 项目源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。

工作机制

 Django安装

pip install Django

pycharm创建Django项目

如果你的电脑中有多个python环境,这里的python环境需要选中你上一步安装Django的python环境。

环境变量

检查安装Django的python环境是不是已经存在“环境变量”中:

Django项目创建apppython manage.py startapp 创建的app名字#比如:python manage.py startapp app01创建templates文件

用于存放前端页面

此时的Django项目结构为

创建urls连接前端路由

进入创建好的jango1文件夹下的urls.py文件

首先引入创建的app01中的views类

from app01 import views

然后在urlpatterns中添加:

path('news/', views.news)二挡起步——pythonweb开发Django框架,前端原生+Django后端框架+python网络抓包(代替数据库数据)(附带小案例)(二挡起步教程)

说明:这是我们已经完成了默认域名上的路径为"news/"的页面路径了。后面的views.news为向该路由的html文件传递参数。

在app01文件中创建返回页面路由内容的函数

对应urls连接完成的前端路由,采用Django的render语法;

views.py

利用python的requests第三方模块,实现**文库的具体内容的抓包。并将抓取的内容,打印并利用Django的render语法形式传递到我们上面创建好的前端页面路由中。

具体代码from django.shortcuts import render, HttpResponsedef news(request): # 1. 优先去根目录的templates中寻找 # 2. 根据app的注册顺序,在每个app下的templates目录中寻找 # 去app目录下的templates目录寻找user_list.html(根据app注册的顺序、逐一去他们的templates目录中找) import requests import re url = 'https://wenku.baidu.com/view/727cc1ac730abb68a98271fe910ef12d2af9a99e.html?_wkts_=1683444255080&bdQuery=%E7%99%BE%E5%BA%A6%E6%96%87%E8%AE%A1%E7%AE%97%E6%9C%BA%E6%96%B0%E9%97%BB' header = {'User-Agent': 'Googlebot'} res = requests.get(url=url, headers=header) raw_text = res.text re_res = re.findall(' <div style="border:1px solid #C8DBD3;padding:20px;line-height:24px;">(.*)</mod>', raw_text, re.DOTALL) # re.DOTALL:可以将多行内容进行匹配给正则表达式使用(进行修改) re_res = (''.join(re_res)) # 去除[''],将换行符实行为真的换行,并供re.DOTALL使用 text = str(re_res) # 将爬取到的网页内容转换为字符串形式,以便于一下的字符的替换等 text_1 = re.sub('[\n\u3000 <div>\nbr\x0c//]', '', text) # 第一次过滤:将一系列特殊字符删去 # re.sub用法:re.sub('Q','w',text)将text中的Q都换成w # 第一种方法:.replace与re.sub用法相同也是将个别字符串进行替换 # text_2 = text_1.replace(r'\n','').replace(r'\u3000','').replace(r'\x0c','').replace(r'&#34','').replace(r'&#39','')#第二次过滤:将一系列的特殊字符删去 # 第二种方法用正则表达式re.sub()语句进行字符串的替换 text_2 = re.sub('\n\u3000\x0c&#34&#39', '', text_1) print(''.join(text_2)) wenxin = ''.join(text_2) return render(request, "news.html", {"xinwen": wenxin})前端页面

此时我们使用原生的前端页面html文件接收Django后端抓取并携带过来的**文库的内容。

并使用动态绑定,将内容渲染到页面中

具体代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>计算机科学系学生会</title></head><body> <h1 style="margin-left: 40%">计算机科学系学生会</h1> <h3>{{ xinwen }}</h3></body></html>运行Django项目

两种方式:

1.使用命令窗口打开项目

打开pycharm中自带的命令窗口,输入命令:

python manage.py runserver 自己想开启的端口号

比如:

python manage.py runserver 8001

说明:Django项目在8001端口中运行

2.基于pycharm的运行按钮运行

注意事项:

python的Django项目运行的默认端口为8000,所以当我们运行时有可能出现端口被占用的情况,出现此情况时,我们需要进入cmd查看该端口的占用进程,并根据其编号关闭该进程。

重启Django项目后即可运行。

运行效果

Django运行效果

前端运行效果

本文链接地址:https://www.jiuchutong.com/zhishi/298727.html 转载请保留说明!

上一篇:python+neo4j构建基于知识图谱的电影知识智能问答系统(python 构建)

下一篇:echarts的grid——图表的位置配置(echartsgrid属性)

  • 财产转让所得个人所得税优惠政策
  • 车船税每年都要交吗,一般是多少钱交强险可以晚交吗
  • 工厂道路设计图
  • 科研材料怎么买
  • 实发工资知道如何发放吗
  • 融单是什么意思
  • 新会计准则土地使用权摊销处理
  • 促销费可以开专票吗
  • 股东溢价转让股份交易市场会计分录
  • 丢失发票联和抵扣联
  • 银行卡酒店消费有记录吗
  • 电汇凭证如何使用
  • 跨年度费用怎么入账
  • 新建厂房房产证办理流程
  • 物业收取水费比水厂收的高怎么办
  • 附注的主要作用
  • 小额开专票
  • 税控系统技术维护费
  • 提供物业管理服务税率
  • 个人所得税特殊计税方法
  • 贷款减值损失的计提规则
  • 坏账的计提和发生分录
  • 业委会是否要交税
  • 主营业务收入如何确认
  • 金蝶是先过账还是先审核
  • 公司控股的公司下子公司有哪些
  • configureandwatch
  • 事业单位基建账并入大账规定
  • 收到采购发票未开票
  • 企业核定征收管理办法
  • 无形资产出租的账务处理
  • 其他应收款可以和其他应付款对冲吗
  • PHP:pcntl_wifsignaled()的用法_PCNTL函数
  • 供电企业收费项目管理的暂行规定
  • 期票是不是承兑汇票
  • wamp环境搭建的过程
  • thinkphp i方法
  • 谷歌插件下载网址
  • vue子组件获取dom元素的方法
  • node js m1
  • 超参数有哪些调优方法
  • php array合并
  • 农民专业合作社连续几年未从事经营活动吊销营业执照
  • 如何根据营业执照核定税种
  • 第二季度所得税可以弥补以前年度亏损吗
  • 收集整理数据
  • 销售部门发生的商品维修费
  • 融资租赁公司的风险资产包括哪些
  • 社保是当月计提当月交吗
  • 增值税税率调整为13%从什么时候开始实行
  • 工资能否当月计提当月发放
  • 办公室搬迁工作
  • 上市公司股票增发条件
  • 退客户多余货款怎么处理
  • 票已收到、款未付会计分录
  • 培训费产生的差额怎么算
  • 应计入财务费用的科目是
  • 生产企业下单就做收入没交货怎么做账
  • 企业会计账簿设计的原则
  • 鼠标系统怎么安装
  • winxp 移动硬盘
  • linux命令rz -y
  • 无法ping通虚拟机
  • kali linux 视频教程
  • 做好一个服务器工作
  • linux 获取网页
  • linux ssh rsa
  • dotnetfx35有什么用
  • windows一键安装
  • 如何去掉桌面图标的蓝底
  • centos时间不同步的解决方法(centos时间同步)
  • win7的系统设置
  • jquery虚拟dom
  • jquery showdialog
  • 悬浮广告怎么屏蔽
  • Unity AssetBundle爬坑手记
  • javascript教程代码
  • android 获取时区
  • 开票软件重置密码去哪里
  • 地方财政税收的组成
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设