Python+django网页设计入门(14):使用中间件对抗爬虫

前导课程:

Python+django网页设计入门(13):表单、修改密码

Python+django网页设计入门(12):使用Bootstrap和jQuery

Python+django网页设计入门(11):在线考试与自动评分

Python+django网页设计入门(10):分页显示

Python+django网页设计入门(9):自定义反爬虫功能

Python+django网页设计入门(8):网站项目文件夹布局

Python+django网页设计入门(7):常用ORM操作

Python+django网页设计入门(6):文件上传与数据导入

Python+django网页设计入门(5):自定义用户注册与登录功

Python+django网页设计入门(4):用户登录与登录验证

Python+django网页设计入门(3):使用SQLite数据库

技术要点:

1)使用中间件;

2)设置反爬功能。

相关基础:

在django中,中间件实际上就是一个类,在请求到来和结束后、处理视图时以及响应返回前,django会根据自己的规则在合适的时机执行中间件中相应的方法,在中间件中可以实现并起作用的方法主要有:

  • process_request(self,request)
  • process_view(self, request, callback, callback_args, callback_kwargs)
  • process_template_response(self,request,response)
  • process_exception(self, request, exception)
  • process_response(self, request, response)

在客户端发起的所有请求到达view层得到处理之前,都会先依次经过settings.py文件中设置的每个中间件的process_request()方法,此时实现拦截爬虫的功能。

===========================

1、在网站项目文件夹中创建包middle,在middle中创建文件antiCraw.py。

2、在antiCraw.py程序中编写一个类AntiCraw,实现反爬功能。

3、修改网站项目的setting.py文件,启用自定义的中间件。

4、修改apps\questions\views.py,把前面课程中使用修饰器实现的反爬功能注释掉。

5、执行命令运行网站,观察中间件中的反爬功能是否起作用,并体会中间件和修饰器这两种实现方法的不同。

温馨提示

进入公众号,通过菜单“最新资源”==>“历史文章”可以快速查看分专题的文章列表,通过“最新资源”==>“微课专区”可以观看Python微课,通过“最新资源”==>“培训动态”可以查看近期Python培训安排,通过“最新资源”==>“教学资源”可以查看Python教学资源。

--------董付国老师Python系列图书--------

1)《Python程序设计(第2版)》清华大学出版社(2018年8月第9次印刷)https://item.jd.com/11949168.html

2)《Python可以这样学》清华大学出版社(2018年7月第6次印刷)(本书已在中国台湾发行繁体版)https://item.jd.com/12040511.html

3)《Python程序设计基础(第2版)》清华大学出版社(2018年9月第6次印刷)https://item.jd.com/12319738.html

4)《中学生可以这样学Python》清华大学出版社(2018年9月第3次印刷)https://item.jd.com/12258900.html

5)《Python程序设计开发宝典》清华大学出版社(2018年2月第3次印刷)https://item.jd.com/12143483.html

6)《玩转Python轻松过二级》清华大学出版社(2018年7月第3次印刷)https://item.jd.com/12361144.html

7)《Python程序设计基础与应用》机械工业出版社(2018年9月第1次印刷)https://item.jd.com/12433472.html?dist=jd

8)《Python程序设计实验指导书》清华大学出版社(预计2019年1月出版)

9)《Python编程基础与案例集锦(中学版)》电子工业出版社(预计2019年2月出版)

下一篇
举报

扫码关注云+社区

领取腾讯云代金券