xml地图|网站地图|网站标签 [设为首页] [加入收藏]

正规赌博平台

当前位置:网上十大正规赌博平台 > 正规赌博平台 > Python爬虫教程,三层架构

Python爬虫教程,三层架构

来源:http://www.nb-machinery.com 作者:网上十大正规赌博平台 时间:2019-09-25 22:09

Spider-01-爬虫介绍

Python 爬虫的知识量不是特别大,但是需要不停和网页打交道,每个网页情况都有所差异,所以对应变能力有些要求

不只是判断的扩展名,修改扩展名的也可判断。

三层架构

爬虫准备工作

  • 参考资料
  • 精通Python爬虫框架Scrapy,人民邮电出版社

图片 1图片 2

前段时间公司要求修改一个网站,打开后我疯了,一层没有都是调用的DB接口,遍地的SQL语句,非常杂乱。

基础知识

  • url, http
  • web前端,html,css,js
  • ajax
  • re,xpath
  • xml
 1 private bool IsImage(string filePath) 2         { 3             Image image; 4             try 5             { 6                 image = Image.FromFile; 7                 image.Dispose(); 8                 return true; 9             }10             catch (Exception ex)11             {12                 return false;13             }14         }

什么是三层架构?

python 爬虫简介

  • 爬虫定义:网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索引、模拟程序或者蠕虫
  • 两大特征
    • 能按照作者要求下载数据
    • 能自动在网络上流窜
  • 三大步骤
    • 下载网页
    • 提取正确的信息
    • 根据一定规则自动跳到另外的网页上执行上两步操作
  • 爬虫分类

    • 通用爬虫:
      不分类,比如百度搜索引擎,我们通过百度输入数据,获取百度爬虫从各种网站爬到的数据
    • 专用爬虫 :
      就是我们介绍的,关于某一类的数据,比如说,需要爬智联招聘网站,某地区的招聘信息
  • Python网络包简介

    • Python2.* :urllib, urllib2, urllib3, httplib, httplib2, requests
    • Python3.* :urllib, urllib3, httplib2, requests
    • Python2:urllib, urllib2配合使用,或者requests
    • Python3:urllib,requests

View Code

三层架构是将整个项目划分为三个层次:表现层、业务逻辑层、数据访问层。目的为了高内聚低耦合思想。

我的爬虫笔记

  • Python爬虫教程-01-爬虫介绍
  • Python爬虫教程-02-使用urlopen
  • Python爬虫教程-03-使用 chardet 检测编码
  • Python爬虫教程-04-response简介
  • Python爬虫教程-05-python爬虫实现百度翻译
  • Python爬虫教程-06-爬虫实现百度翻译
  • Python爬虫教程-07-post介绍
  • Python爬虫教程-08-post介绍
  • Python爬虫教程-09-error 模块
  • Python爬虫教程-10-UserAgent和常见浏览器UA值
  • Python爬虫教程-11-proxy代理IP,隐藏地址
  • Python爬虫教程-12-爬虫使用cookie爬取登录后的页面
  • Python爬虫教程-13-爬虫使用cookie爬取登录后的页面
  • Python爬虫教程-14-爬虫使用filecookiejar保存cookie文件
  • Python爬虫教程-15-读取cookie和SSL
  • Python爬虫教程-16-破解js加密实例
  • Python爬虫教程-17-ajax爬取实例
  • Python爬虫教程-18-页面解析和数据提取
  • Python爬虫教程-19-数据提取-正则表达式
  • Python爬虫教程-20-xml简介
  • Python爬虫教程-21-xpath
  • Python爬虫教程-22-lxml-etree和xpath配合使用
  • Python爬虫教程-23-数据提取-BeautifulSoup4
  • Python爬虫教程-24-数据提取-BeautifulSoup4
  • Python爬虫教程-25-数据提取-BeautifulSoup4
  • Python爬虫教程-26-Selenium PhantomJS
  • Python爬虫教程-27-Selenium Chrome版本与chromedriver兼容版本对照表
  • Python爬虫教程-28-Selenium 操纵 Chrome
  • Python爬虫教程-29-验证码识别-Tesseract-OCR
  • Python爬虫教程-30-Scrapy 爬虫框架介绍
  • Python爬虫教程-31-创建 Scrapy 爬虫框架项目
  • Python爬虫教程-32-Scrapy 爬虫框架项目 Settings.py 介绍
  • Python爬虫教程-33-scrapy shell 的使用
  • Python爬虫教程-34-分布式爬虫介绍
  • 本笔记学习于图灵学院python全栈课程
  • 本笔记不允许任何个人和组织转载

判断文件的头部

三层结构

图片 3图片 4

表现层:接受用户请求,数据的返回呈现。

    /// <summary>     /// 根据文件头判断上传的文件类型     /// </summary>    /// <param name="filePath">filePath是文件的完整路径       </param>     /// <returns>返回true或false</returns>    private bool IsPicture(string filePath)    {        try        {            FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);            BinaryReader reader = new BinaryReader;            string fileClass;            byte buffer;            buffer = reader.ReadByte();            fileClass = buffer.ToString();            buffer = reader.ReadByte();            fileClass  = buffer.ToString();            reader.Close();            fs.Close();            if (fileClass == "255216" || fileClass == "7173" || fileClass == "13780" || fileClass == "6677")                  //255216是jpg;7173是gif;6677是BMP,13780是PNG;7790是exe,8297是rar             {                return true;            }            else            {                return false;            }        }        catch        {            return false;        }    }

业务逻辑层:用来处理业务逻辑,处理用户提交的数据。

View Code

数据访问层:用来与数据库进行交互,处理增、删、改、差。

实体类对象:用来存储实体类。

三层关系

UI表现层:接收用户输入的数据,并传递给业务逻辑层。

BLL业务逻辑层:把接收到的数据传递给数据访问层,并返回结果给UI层。

DAL数据访问层:负责与数据库进行交互,并将结果返回给BLL层。

什么时候需要分层?

当项目过大的时候可以分层开发,这样可以每个人负责的不同,共同进行开发。如果一个项目非常小的话,独立开发可以不分层。

操作步骤:

1、创建结构

新增三个类库分别是:BLL、DAL、Model,并建立一个UI层(winform或webform或 MVC项目)设置启动项为UI层。

图片 5

这里随个人喜欢可以再加一个Common层,负责处理其他常用方法。

图片 6

2、引用关系

DAL要用到Model,BLL要用到DAL、CL和Model,UI要用到BLL、Model和CL。相互引用即可。

图片 7

实现登陆

登陆是所有系统的入口,相信大家一般都用session,本例使用FormsAuthentication微软提供的身份认证,存储在cookie中。

假设有如下管理员表:

图片 8

mif_id:唯一标识,lever等级,usernmae,psw账号密码,trueName姓名,createTime创建日期,isLock是否锁定,Power权限。

本文由网上十大正规赌博平台发布于正规赌博平台,转载请注明出处:Python爬虫教程,三层架构

关键词: