摘要:
在《Django创建第一个项目》一节中,我们简单介绍了 settings.py 配置文件,它是 Django 框架的重要配置文件,它定义的一些全局变量用来给 Django 框架传递参数,我们还可以根据自己的实际需求来修改这个文件从而实现某些特定的要求。下面我们对这个配置文件进行详细介绍,了解这个配置 阅读全文
posted @ 2022-08-01 14:20
随遇而安==
阅读(148)
评论(0)
推荐(0)
摘要:
我们使用 django-admin 命令成功创建项目后,我们要如何启动这个项目呢?本节的学习目标是能够通过本地回送地址 127.0.0.1 成功访问 BookStore 项目。 1. 启动项目并实现访问 在 CMD 命令行工具中,执行cd命令进入 Book/BookStore 目录下,通过《Djan 阅读全文
posted @ 2022-08-01 14:19
随遇而安==
阅读(276)
评论(0)
推荐(0)
摘要:
在上一章中,我们完成了开发环境的搭建工作。 本章我们将学习如何创建 Django 项目以及 Django 项目的初始化,我们将创建一个名为 BookStore 的 Django 项目,用此项目来讲解 Django 框架的部分知识,通过这个项目我们将一起打开 Django 世界的大门。 1. 第一个项 阅读全文
posted @ 2022-08-01 14:18
随遇而安==
阅读(84)
评论(0)
推荐(0)
摘要:
本节主要对 Django 在各个平台上的安装方式与配置进行讲解。前文章节提到过,不同 Django 版本对 Python 版本的要求也是不一样的 ,Django 对 Python 版本的支持,如表格所示: Django版本与Python版本对应表 Django版本 Python版本 1.8 2.7, 阅读全文
posted @ 2022-08-01 14:17
随遇而安==
阅读(603)
评论(0)
推荐(0)
摘要:
上一章我们介绍了 Django 框架的重要组件,常言道“工欲善其事,必先利其器”,在正式创建 Django 项目之前,我们还需要做哪些准备呢?本节将对如何搭建 Django 开发环境做详细的讲解。搭建开发环境不仅是个繁琐的过程,而且很容易出错,搭建 Django 开发环境主要分为以下 5 个步骤,我 阅读全文
posted @ 2022-08-01 14:16
随遇而安==
阅读(187)
评论(0)
推荐(0)
摘要:
本节我们讲解 Django 框架的缓存系统,在 Web 开发领域,缓存作为一种程序技术被广泛的应用。那么到底什么是缓存呢?Django 中缓存系统又起到了哪些关键作用呢?我们一起来了解一下。 1. 缓存技术的作用 缓存是指保存一些计算开销较大的数据,可以是某个网页,也可以是网页的一部分,或者仅仅只是 阅读全文
posted @ 2022-08-01 14:15
随遇而安==
阅读(108)
评论(0)
推荐(0)
摘要:
中间件是一个插件系统,嵌入在 Django 的 Request 和 Response 之间执行,可以对输入和输出内容作出修改,它是处理所有请求与响应的通用框架组件。 1. Django默认自带中间件 中间件本质上是一个 Python 类,类里定义了一些函数,这些函数在视图函数执行的前后调用,它们被形 阅读全文
posted @ 2022-08-01 14:14
随遇而安==
阅读(59)
评论(0)
推荐(0)
摘要:
1. Django 路由系统应用 一个用户向 Web 站点发送请求,是通过 URL 实现的,当 Web 服务器端接收到用户请求后,它又是怎么处理的呢?通过 MTV 的设计模式,我们可以得知,首先用户请求会到达相应的视图函数,那么视图函数又是怎样找到相应的访问资源的呢,在这里就用到了“路由系统”。Dj 阅读全文
posted @ 2022-08-01 14:13
随遇而安==
阅读(66)
评论(0)
推荐(0)
摘要:
本节讲解 URL 的一些基础知识,如果您已经对它非常熟悉,可以跳过本节,直接进行下一节的学习。 1. 为什么了解URL URL 即统一资源定位符,它是用来表示互联网上的某个资源地址,互联网上的每个文件都有一个唯一的 URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。URL 最初是由蒂姆·伯 阅读全文
posted @ 2022-08-01 14:12
随遇而安==
阅读(178)
评论(0)
推荐(0)
摘要:
本节我们继续使用《Django视图函数》一节中的“Hello_my_django”函数来完成相关知识的讲解。 from django.http import HttpResponse def Hello_my_django(request): return HttpResponse('<html>< 阅读全文
posted @ 2022-08-01 14:11
随遇而安==
阅读(61)
评论(0)
推荐(0)
摘要:
视图是 MTV 设计模式中的 V 层,它是实现业务逻辑的关键层,可以用来连接 M 层与 T 层,起着纽带般的作用,在《Django MTV和MVC的区别》中也做了相应的介绍,所以它的重要性可想而知。 1. 第一个视图函数 在 Django 中,视图函数是一个 Python 函数或者类,开发者主要通过 阅读全文
posted @ 2022-08-01 14:10
随遇而安==
阅读(137)
评论(0)
推荐(0)
摘要:
Django 的后台管理系统是非常出色的,新建项目以后,Django 就为我们设置好了后台管理系统的各种功能,本节我们将一起认识它! 1. 后台管理系统的重要性 我们先考虑一下,Django 为什么要引入后台管理系统呢?我们知道,Web 站点上某些内容的改动是后台管理员来完成的,如果管理员直接用 S 阅读全文
posted @ 2022-08-01 14:09
随遇而安==
阅读(378)
评论(0)
推荐(0)
摘要:
在设计开发任何一个站点的时候都需要有“用户”的概念,从用户的注册、登陆、退出或者注销,到用户的浏览、订阅等,这些都需要用户管理系统来实现。如果没有时间积累和相关开发工作经验,设计一个优秀的用户系统是很困难的。那么 Django 又是如何解决这个问题的呢? 1. Django的auth模块 Djang 阅读全文
posted @ 2022-08-01 14:08
随遇而安==
阅读(75)
评论(0)
推荐(0)
摘要:
Django 框架向我们提供了丰富的模块,避免程序员在开发的过程中重复“造轮子”,提高了开发者的工作效率。接下来的几节内容,将给大家介绍 Django 的主要功能模块,第一个模块是 Django 的 ORM 模块。 1. 什么是 ORM? ORM (Object Realtional Mapping 阅读全文
posted @ 2022-08-01 14:07
随遇而安==
阅读(102)
评论(0)
推荐(0)
摘要:
本节我们介绍 Django 的设计模式,也就是 MTV。在 Web 开发领域还有另外一个非常著名的设计模式——MVC,它和 MTV 又有什么区别呢?这也是本节关注的重点内容。 1. MVC设计模式 我们先对 MVC 设计模式进行介绍,它是 Web 设计模式的经典之作,MTV 模式也是在它的基础上衍生 阅读全文
posted @ 2022-08-01 14:07
随遇而安==
阅读(120)
评论(0)
推荐(0)
摘要:
Django 是使用 Python 语言开发的一款免费而且开源的 Web 应用框架。由于 Python 语言的跨平台性,所以 Django 同样支持 Windows、Linux 和 Mac 系统。在 Python 语言炽手可热的当下,Django 也迅速的崛起,在 Web 开发领域占有一席之地。基于 阅读全文
posted @ 2022-08-01 14:06
随遇而安==
阅读(179)
评论(0)
推荐(0)
摘要:
随机森林(Random Forest,简称RF)是通过集成学习的思想将多棵树集成的一种算法,它的基本单位是决策树模型,而它的本质属于机器学习的一大分支——集成学习(Ensemble Learning)方法。我们知道,集成学习的实现方法主要分为两大类,即 Bagging 和 boosting 算法,随 阅读全文
posted @ 2022-08-01 13:52
随遇而安==
阅读(318)
评论(0)
推荐(0)
摘要:
经过前面的学习,我们认识了机器学习中的常用回归算法、分类算法和聚类算法,在众多的算法中,除神经网络算法之外,没有一款算法模型预测准确率达到 100%,因此如何提高预测模型的准确率成为业界研究的重点。通过前面内容的学习,你可能会迅速想到一些方法,比如选择一款适合的算法,然后反复调整各种参数,其实这并不 阅读全文
posted @ 2022-08-01 13:51
随遇而安==
阅读(232)
评论(0)
推荐(0)
摘要:
在深度学习大热的当下,神经网络算法是最知名、应用最为广泛的机器学习算法。可以毫不夸张地说,你所能接触到的人工智能产品,绝大部分都使用了神经网络算法,比如手机经常用到的刷脸解锁、美颜修图、照片中的人物识别等,都是基于神经网络分类算法实现的。 神经网络算法特点 我们知道,深度学习的本质就是神经网络算法( 阅读全文
posted @ 2022-08-01 13:50
随遇而安==
阅读(462)
评论(0)
推荐(0)
摘要:
在本教程的开篇《人工智能是什么》一节中详细的阐述了深度学习发展历程,以及人工智能、机器学习、深度学习三者间的关系。就目前而言,这三者中红到发紫的当属“深度学习”。深度学习(Deep Learning)这一概念是由 Geoffrey Hinton(深度学习之父)于 2006 年提出,但它的起源时间要早 阅读全文
posted @ 2022-08-01 13:49
随遇而安==
阅读(312)
评论(0)
推荐(0)
摘要:
通过《人工神经网络是什么》一节,我们了解了神经网络的发展历程,同时掌握了人工神经网络的基本结构。在本节将主要围绕“反向传播算法”对人工神经网络的分类原理进行讲解。在神经网络算法还没流行前,机器学习领域最受关注的算法是“支持向量机算法(即 SVM 算法)”,如今神经网络方兴未艾,您也许会好奇,神经网络 阅读全文
posted @ 2022-08-01 13:49
随遇而安==
阅读(322)
评论(0)
推荐(0)
摘要:
K-means 聚类算法属于无监督学习,它会将相似的对象归到同一个簇中,该算法原理简单,执行效率高,并且容易实现,是解决聚类问题的经典算法。尽管如此,任何一款算法都不可能做到完美无瑕,K-measn 算法也有自身的不足之处,比如 K-means 需要通过算术平均数来度量距离,因此数据集的为维度属性必 阅读全文
posted @ 2022-08-01 13:47
随遇而安==
阅读(617)
评论(0)
推荐(0)
摘要:
机器学习算法主要分为两大类:有监督学习和无监督学习,它们在算法思想上存在本质的区别。有监督学习,主要对有标签的数据集(即有“参考答案”)去构建机器学习模型,但在实际的生产环境中,其实大量数据是处于没有被标注的状态,这时因为“贴标签”的工作需要耗费大量的人力,如果数据量巨大,或者调研难度大的话,生产出 阅读全文
posted @ 2022-08-01 13:46
随遇而安==
阅读(81)
评论(0)
推荐(0)
摘要:
我们了解了 K-means 聚类算法的聚类过程,其实就是不断寻找簇的质心的过程,该过程从随机设定 K 个质心开始,直到找到 K 个最合适的质心为止。本节我们透过算法流程直击算法的本质,帮助您彻底理解 K-means 算法。 度量最小距离 对于 K-means 聚类算法而言,找到质心是一项既核心又重要 阅读全文
posted @ 2022-08-01 13:46
随遇而安==
阅读(172)
评论(0)
推荐(0)
摘要:
SVM 是一种有监督学习分类算法,输入值为样本特征值向量和其对应的类别标签,输出具有预测分类功能的模型,当给该模型喂入特征值时,该模型可以它对应的类别标签,从而实现分类。 Sklearn库SVM算法 下面我看一下 Python 的 Scikit -Learn(简称 Sklearn) 库是如何实现 S 阅读全文
posted @ 2022-08-01 13:45
随遇而安==
阅读(317)
评论(0)
推荐(0)
摘要:
本节将从数学角度讲解支持向量机(SVM)相关知识,掌握这些有利用加深对 SVM 算法原理的理解,对于学习任何一款机器学习算法都是非常有帮助的,虽然各种数学公式很难懂,但本人会尽最大努力去讲明白。尽管如此由于每位读者的数学基础不一样,如有表达不到位的地方,还请海涵。 再谈间隔最大化 我们知道,支持向量 阅读全文
posted @ 2022-08-01 13:44
随遇而安==
阅读(88)
评论(0)
推荐(0)
摘要:
通过上一节的学习,我们知道 SVM 是一种用来解决性线性不可分问题的算法,那它到底是如何解决的呢?在本节我们将对其做出详细的解释。 让棋子飞起来 首先我们来回味一下《初识 SVM支持向量机算法》一节提到的案例:在一个棋盘上杂糅的摆放着黑白两种棋子,要求我们以最快的速度将它们各自分开,这时我们应该如何 阅读全文
posted @ 2022-08-01 13:43
随遇而安==
阅读(303)
评论(0)
推荐(0)
摘要:
支持向量机,英文全称“Support Vector Machines”(简称 SVM),它是机器学习中最常用的一种“分类算法”。SVM 是一种非常优雅的算法,有着非常完善的数学理论基础,其预测效果,在众多机器学习模型中可谓“出类拔萃”。在深度学习没有普及之前,“支持向量机”可以称的上是传统机器学习中 阅读全文
posted @ 2022-08-01 13:42
随遇而安==
阅读(156)
评论(0)
推荐(0)
摘要:
本节基于 Python Sklearn 机器学习算法库,对决策树这类算法做相关介绍,并对该算法的使用步骤做简单的总结,最后通过应用案例对决策树算法的代码实现进行演示。 决策树算法应用 在 sklearn 库中与决策树相关的算法都存放在sklearn.tree模块里,该模块提供了 4 个决策树算法,下 阅读全文
posted @ 2022-08-01 13:41
随遇而安==
阅读(192)
评论(0)
推荐(0)
摘要:
本节我们对决策算法原理做简单的解析,帮助您理清算法思路,温故而知新。我们知道,决策树算法是一种树形分类结构,要通过这棵树实现样本分类,就要根据 if -else 原理设置判别条件。因此您可以这样理解,决策树是由许多 if -else 分枝组合而成的树形模型。 决策树算法原理 决策树特征属性是 if 阅读全文
posted @ 2022-08-01 13:40
随遇而安==
阅读(250)
评论(0)
推荐(0)
摘要:
首先来看一个“我想你来猜”的游戏,游戏规则很简单:一个人从脑海中构建一个事物,另外几个人最多可以向他提问 20 个问题,游戏规定,问题的答案只能用是或者否来回答。问问题的人通过回答者的“答案”来推分析、逐步缩小待猜测事物的范围,从而来判断他想的是什么。其实这个游戏与决策树工作过程相似。那么你有没有考 阅读全文
posted @ 2022-08-01 13:38
随遇而安==
阅读(87)
评论(0)
推荐(0)
摘要:
通过两节知识的学习,相信你对朴素贝叶斯算法有了初步的掌握,本节将实际应用朴素贝叶斯算法,从实战中体会算法的精妙之处。首先看下面一个简单应用案例: 简单应用案例 假设一个学校有 45% 的男生和 55% 的女生,学校规定不能穿奇装异服,男生的裤子只能穿长筒裤,而女生可以穿裙子或者长筒裤,已知该学校穿长 阅读全文
posted @ 2022-08-01 13:37
随遇而安==
阅读(124)
评论(0)
推荐(0)
摘要:
在本节我们将介绍“机器学习”中的“明星”算法“决策树算法”。决策树算法在“决策”领域有着广泛的应用,比如个人决策、公司管理决策等。其实更准确的来讲,决策树算法算是一类算法,这类算法逻辑模型以“树形结构”呈现,因此它比较容易理解,并不是很复杂,我们可以清楚的掌握分类过程中的每一个细节。 if-else 阅读全文
posted @ 2022-08-01 13:37
随遇而安==
阅读(149)
评论(0)
推荐(0)
摘要:
在此基础之上,这一节我们将深入讲解“朴素贝叶斯算法”。我们知道解决分类问题时,需要根据他们各自的特征来进行判断,比如区分“一对双胞胎不同之处”,虽然他们看起来相似,但是我们仍然可以根据细微的特征,来区分他们,并准确地叫出他们的名字。就像一句非常有哲理的话,“世界上没有完全相同的两片树叶”,因此被分类 阅读全文
posted @ 2022-08-01 13:36
随遇而安==
阅读(146)
评论(0)
推荐(0)
摘要:
朴素贝叶斯(Naive Bayesian algorithm)是有监督学习的一种分类算法,它基于“贝叶斯定理”实现,该原理的提出人是英国著名数学家托马斯·贝叶斯。贝叶斯定理是基于概率论和统计学的相关知识实现的,因此在正式学习“朴素贝叶斯算法”前,我们有必要先认识“贝叶斯定理”。 贝叶斯定理 贝叶斯定 阅读全文
posted @ 2022-08-01 13:35
随遇而安==
阅读(1303)
评论(0)
推荐(0)
摘要:
Pyhthon Sklearn 机器学习库提供了 neighbors 模块,该模块下提供了 KNN 算法的常用方法,如下所示: 类方法 说明 KNeighborsClassifier KNN 算法解决分类问题 KNeighborsRegressor KNN 算法解决回归问题 RadiusNeighb 阅读全文
posted @ 2022-08-01 13:34
随遇而安==
阅读(177)
评论(0)
推荐(0)
摘要:
本节继续探机器学习分类算法——K 最近邻分类算法,简称 KNN(K-Nearest-Neighbor),它是有监督学习分类算法的一种。所谓 K 近邻,就是 K 个最近的邻居。比如对一个样本数据进行分类,我们可以用与它最邻近的 K 个样本来表示它,这与俗语“近朱者赤,近墨者黑”是一个道理。在学习 KN 阅读全文
posted @ 2022-08-01 13:33
随遇而安==
阅读(167)
评论(0)
推荐(0)
摘要:
在 Scikit-Learn 机器学习库中,有关线性模型的算法族都在linear_model模块下,不同的算法又会分化为很多类,但它们都是经过几种基本算法调整和组合而成,因此基本上都是大同小异,换汤不换药,下面介绍经常用到回归类算法,其中就包含了 Logistic 回归算法。在这之前我们需要先熟悉几 阅读全文
posted @ 2022-08-01 13:32
随遇而安==
阅读(175)
评论(0)
推荐(0)
摘要:
我们知道有监督学习分为“回归问题”和“分类问题”,前面我们已经认识了什么是“回归问题”,从本节开始我们将讲解“分类问题”的相关算法。在介绍具体的算法前,我们先聊聊到底什么是分类问题。 什么是分类问题? 其实想要理解“分类”问题非常的简单,我们不妨拿最简单的“垃圾分类处理”的过程来认识一下这个词。现在 阅读全文
posted @ 2022-08-01 13:31
随遇而安==
阅读(160)
评论(0)
推荐(0)
摘要:
我们知道分类问题的预测结果是离散型数据,那么我们在程序中要如何表述这些数据呢,再者我们要如何从数学角度理解 Logistic 算法,比如它的损失函数、优化方法等。 分类数据表示形式 1) 向量形式 在机器学习中,向量形式是应用最多的形式,使用向量中的元素按顺序代表“类别”。现在有以下三个类别分别是 阅读全文
posted @ 2022-08-01 13:31
随遇而安==
阅读(77)
评论(0)
推荐(0)
摘要:
Scikit-learn 简称 sklearn 是基于 Python 语言实现的机器学习算法库,它包含了常用的机器学习算法,比如回归、分类、聚类、支持向量机、随机森林等等。同时,它使用 NumPy 库进行高效的科学计算,比如线性代数、矩阵等等。Scikit-learn 是 GitHub 上最受欢迎的 阅读全文
posted @ 2022-08-01 13:30
随遇而安==
阅读(195)
评论(0)
推荐(0)
摘要:
在《线性回归:损失函数和假设函数》一节,从数学的角度解释了假设函数和损失函数,我们最终的目的要得到一个最佳的“拟合”直线,因此就需要将损失函数的偏差值减到最小,我们把寻找极小值的过程称为“优化方法”,常用的优化方法有很多,比如共轭梯度法、梯度下降法、牛顿法和拟牛顿法。你可能对于上述方法感到陌生,甚至 阅读全文
posted @ 2022-08-01 13:29
随遇而安==
阅读(122)
评论(0)
推荐(0)
摘要:
通过前面内容的介绍,我相信你对线性回归算法已经有了初步的认识。那我们应该如何在一大堆数据中求解出“线性方程呢”比如前面提及的房价预测问题?这种问题才是符合实际应用的。数据样本会散落在“线性方程”的周围(下图 2 所示), 而我们要做就是让线性方程的“直线”尽可能“拟合”周围的数据点。本节我们将从数学 阅读全文
posted @ 2022-08-01 13:28
随遇而安==
阅读(177)
评论(0)
推荐(0)
摘要:
本节我们会认识第一个机器学习算法 —— 线性回归算法(Linear Regression),它是机器学习算法中较为简单,且容易理解的算法模型,你可以把它看做您的第一个“Hello World”程序。我们先从语义上了解“线性回归”,如果您是第一次接触“线性回归”这个词,那么可以把它分开来看,其中“性代 阅读全文
posted @ 2022-08-01 13:27
随遇而安==
阅读(257)
评论(0)
推荐(0)
摘要:
本节讲解如何构建线性回归算法中的“线性模型”,所谓“线性”其实就是一条“直线”。因此,本节开篇首先普及一下初中的数学知识“一次函数”。 一次函数 一次函数就是最简单的“线性模型”,其直线方程表达式为y = kx + b,其中 k 表示斜率,b 表示截距,x 为自变量,y 表示因变量。下面展示了 y 阅读全文
posted @ 2022-08-01 13:27
随遇而安==
阅读(174)
评论(0)
推荐(0)
摘要:
常言道“工欲善其事,必先利其器”,在学习机器学习算法之前,我们需要做一些准备工作,首先要检查自己的知识体系是否完备,其次是要搭建机器学习的开发环境。本教程以讲解算法为主,不会涉及太复杂的应用案例,在讲解过程中会穿插一些示例代码,这样不仅能够帮助你理解算法原理,同时又能让你体会到算法的应用过程。机器学 阅读全文
posted @ 2022-08-01 13:26
随遇而安==
阅读(124)
评论(0)
推荐(0)
摘要:
机器学习是一门专业性很强的技术,它大量地应用了数学、统计学上的知识,因此总会有一些蹩脚的词汇,这些词汇就像“拦路虎”一样阻碍着我们前进,甚至把我们吓跑。因此认识,并理解这些词汇是首当其冲的任务。本节将介绍机器学习中常用的基本概念,为后续的知识学习打下坚实的基础。 机器学习术语 1) 模型模型这一词语 阅读全文
posted @ 2022-08-01 13:25
随遇而安==
阅读(138)
评论(0)
推荐(0)
摘要:
很早就想写一门关于 Python“机器学习”的教程,不过碍于自身知识的局限性,不知如何下手。如果写的教程通篇只是探讨代码、数学知识、算法原理,这样的教程读起来必然索然无味。经过冥思苦想,终于突发灵感,可不可以写一部关于“机器学习算法”的入门教程呢?让初学者更容易理解常用的机器学习算法,从而帮助那些想 阅读全文
posted @ 2022-08-01 13:24
随遇而安==
阅读(435)
评论(0)
推荐(0)
摘要:
首先看一个简单的示例,比如把 C语言中文网首页的“title”抓取下来,如下所示: <html lang="zh-cn"> <head> <meta charset="gb2312" /> <meta name="baidu-site-verification" content="6B13HRSfY 阅读全文
posted @ 2022-08-01 13:17
随遇而安==
阅读(131)
评论(0)
推荐(0)
摘要:
Scrapy 是一个基于 Twisted 实现的异步处理爬虫框架,该框架使用纯 Python 语言编写。Scrapy 框架应用广泛,常用于数据采集、网络监测,以及自动化测试等。 提示:Twisted 是一个基于事件驱动的网络引擎框架,同样采用 Python 实现。 Scrapy下载安装 Scrapy 阅读全文
posted @ 2022-08-01 13:16
随遇而安==
阅读(171)
评论(0)
推荐(0)
摘要:
本节讲解 Python Selenium 爬虫实战案例,通过对实战案例的讲解让您进一步认识 Selenium 框架。实战案例目标:抓取京东商城(https://www.jd.com/)商品名称、商品价格、评论数量,以及商铺名称。比如输入搜索“Python书籍”,则抓取如下数据: {'name': ' 阅读全文
posted @ 2022-08-01 13:15
随遇而安==
阅读(188)
评论(0)
推荐(0)
摘要:
Selenium 作为一款 Web 自动化测试框架,提供了诸多操作浏览器的方法,本节对其中的常用方法做详细介绍。 定位节点 Selenium 提供了 8 种定位单个节点的方法,如下所示: 定位节点方法 方法 说明 find_element_by_id() 通过 id 属性值定位 find_eleme 阅读全文
posted @ 2022-08-01 13:14
随遇而安==
阅读(189)
评论(0)
推荐(0)
摘要:
Selenium 是一个用于测试 Web 应用程序的自动化测试工具,它直接运行在浏览器中,实现了对浏览器的自动化操作,它支持所有主流的浏览器,包括 IE,Firefox,Safari,Chrome 等。Selenium 支持所有主流平台(如,Windows、Linux、IOS、Android、Edg 阅读全文
posted @ 2022-08-01 13:13
随遇而安==
阅读(215)
评论(0)
推荐(0)
摘要:
Beautiful Soup 简称 BS4(其中 4 表示版本号)是一个 Python 第三方库,它可以从 HTML 或 XML 文档中快速地提取指定的数据。Beautiful Soup 语法简单,使用方便,并且容易理解,因此您可以快速地学习并掌握它。本节我们讲解 BS4 的基本语法。 图1:BS4 阅读全文
posted @ 2022-08-01 13:11
随遇而安==
阅读(188)
评论(0)
推荐(0)
摘要:
多线程使用流程 Python 提供了两个支持多线程的模块,分别是 _thread 和 threading。其中 _thread 模块偏底层,它相比于 threading 模块功能有限,因此推荐大家使用 threading 模块。 threading 中不仅包含了 _thread 模块中的所有方法,还 阅读全文
posted @ 2022-08-01 13:10
随遇而安==
阅读(374)
评论(0)
推荐(0)
摘要:
在使用爬虫采集数据的规程中,我们会遇到许多不同类型的网站,比如一些网站需要用户登录后才允许查看相关内容,如果遇到这种类型的网站,又应该如何编写爬虫程序呢?Cookie 模拟登录技术成功地解决了此类问题。Cookie 是一个记录了用户登录状态以及用户属性的加密字符串。当你第一次登陆网站时,服务端会在返 阅读全文
posted @ 2022-08-01 13:09
随遇而安==
阅读(321)
评论(0)
推荐(0)
摘要:
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,遵循欧洲计算机协会制定的 JavaScript 规范(简称 ECMAScript)。JSON 易于人阅读和编写,同时也易于机器解析和生成,能够有效的提升网信息的传输效率,因此它常被作为网络、程序之间传递信息的 阅读全文
posted @ 2022-08-01 13:08
随遇而安==
阅读(97)
评论(0)
推荐(0)
摘要:
本节讲解如何抓取豆瓣电影“分类排行榜”中的电影数据(https://movie.douban.com/chart),比如输入“犯罪”则会输出所有犯罪影片的电影名称、评分,效果如下所示: 剧情|喜剧|动作|爱情|科幻|动画|悬疑|惊悚|恐怖|纪录片|短片|情色|同性|音乐|歌舞|家庭|儿童|传记|历史 阅读全文
posted @ 2022-08-01 13:07
随遇而安==
阅读(533)
评论(0)
推荐(1)
摘要:
本节使用 Python 爬虫库完成链家二手房(https://bj.lianjia.com/ershoufang/rs/)房源信息抓取,包括楼层、区域、总价、单价等信息。在编写此程序的过程中,您将体会到 lxml 解析库的实际应用。 编写程序流程分析 打开链家网站后,第一步,确定网站是否为静态网站, 阅读全文
posted @ 2022-08-01 13:05
随遇而安==
阅读(1409)
评论(0)
推荐(1)
摘要:
几乎所有浏览器都提供了抓取数据包的功能,因为浏览器为抓包提供了一个专门的操作界面,因此这种抓包方式也被称为“控制台抓包”。本节以 Chrome 浏览器为例进行抓包演示。 控制台抓包指的是利用浏览器开的发者调试工具抓取客户端与后端服务器交互的数据,它能够将网络传输中发送与接收的数据进行截获、重发和编辑 阅读全文
posted @ 2022-08-01 13:05
随遇而安==
阅读(529)
评论(0)
推荐(0)
摘要:
本节通过编写一个简单的爬虫程序,进一步熟悉 lxml 解析库的使用。 确定信息元素结构 首先明确要抓取信息的网页元素结构,比如电影名称、主演演员、上映时间。通过简单分析可以得知,每一部影片的信息都包含在<dd>标签中,而每一<dd>标签又包含在<dl>标签中,因此对于dd标签而言,dl标签是一个更大 阅读全文
posted @ 2022-08-01 13:03
随遇而安==
阅读(115)
评论(0)
推荐(1)
摘要:
lxml 是 Python 的第三方解析库,完全使用 Python 语言编写,它对 Xpath 表达式提供了良好的支持,因此能够了高效地解析 HTML/XML 文档。本节讲解如何通过 lxml 库解析 HTML 文档。 安装lxml库 lxml 属于 Python 第三方库,因此需要使用如下方法安装 阅读全文
posted @ 2022-08-01 13:02
随遇而安==
阅读(241)
评论(0)
推荐(1)
摘要:
为了帮助大家快速掌握 Xpath 表达式的使用,这里给大家推荐一款 Xpath 表达式匹配助软件,它就是 Xpath Helper。 Xpath Helper介绍 Xpath Helper 是一款谷歌应用商店推出的免费工具,因此您需要在谷歌商店进行下载。下载完毕后,谷歌浏览器会将其作为插件自动安装在 阅读全文
posted @ 2022-08-01 13:01
随遇而安==
阅读(345)
评论(0)
推荐(1)
摘要:
在编写爬虫程序的过程中提取信息是非常重要的环节,但是有时使用正则表达式无法匹配到想要的信息,或者书写起来非常麻烦,此时就需要用另外一种数据解析方法,也就是本节要介绍的 Xpath 表达式。 Xpath表达式 XPath(全称:XML Path Language)即 XML 路径语言,它是一门在 XM 阅读全文
posted @ 2022-08-01 13:00
随遇而安==
阅读(48)
评论(0)
推荐(1)
摘要:
本节编写一个快速下载照片的程序,通过百度图片下载您想要的前 60 张图片,并将其保存至相应的目录。本节实战案例是上一节《Python Request库安装和使用》图片下载案例的延伸。 分析url规律 打开百度图片翻页版(点击访问),该翻页版网址要妥善保留。其 url 规律如下: 第一页:https: 阅读全文
posted @ 2022-08-01 12:57
随遇而安==
阅读(204)
评论(0)
推荐(1)
摘要:
Requests 库中定义了七个常用的请求方法,这些方法各自有着不同的作用,在这些请求方法中 requests.get() 与 requests.post() 方法最为常用。请求方法如下所示: 常用请求方法 方法 说明 requests.request() 构造一个请求对象,该方法是实现以下各个方法 阅读全文
posted @ 2022-08-01 12:57
随遇而安==
阅读(241)
评论(0)
推荐(0)
摘要:
Python 提供了多个用来编写爬虫程序的库,除了前面已经介绍的 urllib 库之外,还有一个很重的 Requests 库,这个库的宗旨是“让 HTTP 服务于人类”。 Requests 是 Python 的第三方库,它的安装非常简便,如下所示: python -m pip install req 阅读全文
posted @ 2022-08-01 12:56
随遇而安==
阅读(145)
评论(0)
推荐(1)
摘要:
前面讲解的爬虫案例都是单级页面数据抓取,但有些时候,只抓取一个单级页面是无法完成数据提取的。本节讲解如何使用爬虫抓取多级页面的数据。在爬虫的过程中,多级页面抓取是经常遇见的。下面以抓取二级页面为例,对每级页面的作用进行说明: 一级页面提供了获取二级页面的访问链接。 二级页面作为详情页用来提取所需数据 阅读全文
posted @ 2022-08-01 12:55
随遇而安==
阅读(1401)
评论(0)
推荐(0)
摘要:
Python 连接并操作 MySQL 数据库,主要通过 Pymysql 模块实现。本节讲解如何将抓取的数据存储至 MySQL 数据库。 提示:在学习本节知识之前,您已经掌握了 SQL 语言的基本语法。可参考《MySQL教程》 创建存储数据表 首先您应该确定您的计算机上已经安装了 MySQL 数据库, 阅读全文
posted @ 2022-08-01 12:54
随遇而安==
阅读(174)
评论(0)
推荐(0)
摘要:
本节使用 Python 爬虫抓取猫眼电影网 TOP100 排行榜(https://maoyan.com/board/4)影片信息,包括电影名称、上映时间、主演信息。在开始编写程序之前,首先要确定页面类型(静态页面或动态页面),其次找出页面的 url 规律,最后通过分析网页元素结构来确定正则表达式,从 阅读全文
posted @ 2022-08-01 12:53
随遇而安==
阅读(333)
评论(0)
推荐(0)
摘要:
CSV 文件又称为逗号分隔值文件,是一种通用的、相对简单的文件格式,用以存储表格数据,包括数字或者字符。CSV 是电子表格和数据库中最常见的输入、输出文件格式,可参考《CSV介绍》。通过爬虫将数据抓取的下来,然后把数据保存在文件,或者数据库中,这个过程称为数据的持久化存储。本节介绍 Python 内 阅读全文
posted @ 2022-08-01 12:52
随遇而安==
阅读(226)
评论(0)
推荐(0)
摘要:
在 Python 爬虫过程中,实现网页元素解析的方法有很多,正则解析只是其中之一,常见的还有 BeautifulSoup 和 lxml,它们都支持网页 HTML 元素的解析操作。本节重点讲解如何使用 re 正则解析模块实现网页信息的提取。 注意:在学习本节知识之前,您应该基本掌握了 Python r 阅读全文
posted @ 2022-08-01 12:51
随遇而安==
阅读(113)
评论(0)
推荐(1)
摘要:
正则表达式(regular expression)是一种字符串匹配模式或者规则,它可以用来检索、替换那些符合特定规则的文本。正则表达式几乎适用于所有编程语言,无论是前端语言 JavaScript,还是诸如许多后端语言,比如 Python、Java、C# 等,这些语言都提供了相应的函数、模块来支持正则 阅读全文
posted @ 2022-08-01 12:50
随遇而安==
阅读(77)
评论(0)
推荐(1)
摘要:
节继续讲解 Python 爬虫实战案例:抓取百度贴吧(https://tieba.baidu.com/)页面,比如 Python爬虫吧、编程吧,只抓取贴吧的前 5 个页面即可。本节我们将使用面向对象的编程方法来编写程序。 判断页面类型 通过简单的分析可以得知,待抓取的百度贴吧页面属于静态网页,分析方 阅读全文
posted @ 2022-08-01 12:47
随遇而安==
阅读(398)
评论(0)
推荐(0)
摘要:
本节讲解第一个 Python 爬虫实战案例:抓取您想要的网页,并将其保存至本地计算机。首先我们对要编写的爬虫程序进行简单地分析,该程序可分为以下三个部分: 拼接 url 地址 发送请求 将照片保存至本地 明确逻辑后,我们就可以正式编写爬虫程序了。 导入所需模块 本节内容使用 urllib 库来编写爬 阅读全文
posted @ 2022-08-01 12:46
随遇而安==
阅读(523)
评论(0)
推荐(0)
摘要:
在编写爬虫程序时,一般都会构建一个 User-Agent (用户代理)池,就是把多个浏览器的 UA 信息放进列表中,然后再从中随机选择。构建用户代理池,能够避免总是使用一个 UA 来访问网站,因为短时间内总使用一个 UA 高频率访问的网站,可能会引起网站的警觉,从而封杀掉 IP。 自定义UA代理池 阅读全文
posted @ 2022-08-01 12:45
随遇而安==
阅读(111)
评论(0)
推荐(0)
摘要:
当 URL 路径或者查询参数中,带有中文或者特殊字符的时候,就需要对 URL 进行编码(采用十六进制编码格式)。URL 编码的原则是使用安全字符去表示那些不安全的字符。 安全字符,指的是没有特殊用途或者特殊意义的字符。 URL基本组成 URL 是由一些简单的组件构成,比如协议、域名、端口号、路径和查 阅读全文
posted @ 2022-08-01 12:45
随遇而安==
阅读(287)
评论(0)
推荐(0)
摘要:
本节编写一个最简单的爬虫程序,作为学习 Python 爬虫前的开胃小菜。下面使用 Python 内置的 urllib 库获取网页的 html 信息。注意,urllib 库属于 Python 的标准库模块,无须单独安装,它是 Python 爬虫的常用模块。 获取网页html信息 1) 获取响应对象 向 阅读全文
posted @ 2022-08-01 12:42
随遇而安==
阅读(62)
评论(0)
推荐(0)
摘要:
User-Agent 即用户代理,简称“UA”,它是一个特殊字符串头。网站服务器通过识别 “UA”来确定用户所使用的操作系统版本、CPU 类型、浏览器版本等信息。而网站服务器则通过判断 UA 来给客户端发送不同的页面。我们知道,网络爬虫使用程序代码来访问网站,而非人类亲自点击访问,因此爬虫程序也被称 阅读全文
posted @ 2022-08-01 12:42
随遇而安==
阅读(584)
评论(0)
推荐(0)
摘要:
对于一个优秀的爬虫工程师而言,要善于发现网页元素的规律,并且能从中提炼出有效的信息。因此,在动手编写爬虫程序前,必须要对网页元素进行审查。本节将讲解如何使用“浏览器”审查网页元素。浏览器都自带检查元素的功能,不同的浏览器对该功能的叫法不同, 谷歌(Chrome)浏览器称为“检查”,而 Firefox 阅读全文
posted @ 2022-08-01 12:40
随遇而安==
阅读(396)
评论(0)
推荐(0)
摘要:
本节我们了解一下静态网页和动态网页的相关概念。如果您熟悉前端语言的话,那么您可以快速地了解本节知识。当我们在编写一个爬虫程序前,首先要明确待爬取的页面是静态的,还是动态的,只有确定了页面类型,才方便后续对网页进行分析和程序编写。对于不同的网页类型,编写爬虫程序时所使用的方法也不尽相同。 静态网页 静 阅读全文
posted @ 2022-08-01 12:39
随遇而安==
阅读(253)
评论(0)
推荐(0)
摘要:
爬虫程序之所以可以抓取数据,是因为爬虫能够对网页进行分析,并在网页中提取出想要的数据。在学习 Python 爬虫模块前,我们有必要先熟悉网页的基本结构,这是编写爬虫程序的必备知识。 如果您熟悉前端语言,那么您可以轻松地掌握本节知识。 网页一般由三部分组成,分别是 HTML(超文本标记语言)、CSS( 阅读全文
posted @ 2022-08-01 12:38
随遇而安==
阅读(190)
评论(0)
推荐(1)
摘要:
网络爬虫又称网络蜘蛛、网络机器人,它是一种按照一定的规则自动浏览、检索网页信息的程序或者脚本。网络爬虫能够自动请求网页,并将所需要的数据抓取下来。通过对抓取的数据进行处理,从而提取出有价值的信息。 认识爬虫 我们所熟悉的一系列搜索引擎都是大型的网络爬虫,比如百度、搜狗、360浏览器、谷歌搜索等等。每 阅读全文
posted @ 2022-08-01 12:37
随遇而安==
阅读(325)
评论(0)
推荐(0)
摘要:
截止到本节为止,和 Tkinter 相关的知识就讲解完毕了,本套教程从 GUI 是什么开始入门讲解,然后带领大家深入学习了 Python GUI 标准库 Tkinter,在教程中,我们主要介绍了 GUI 的相关概念、常用组件和布局方式等知识,下面使用 Tkinter 的相关知识实现一个数字时钟的简单 阅读全文
posted @ 2022-08-01 12:30
随遇而安==
阅读(193)
评论(0)
推荐(0)
摘要:
在前面的章节中,我们花费了大量的时间讲解了 Tkinter 中常用基本控件,通过对这些控件的学习,我们对 GUI 开发有了基本的认识与掌握,一个完整的 GUI 程序就是由这些组件以合理、美观的布局方式构成的。除了基本的控件之外,Tkinter 还提供了三种对话框控件: 文件选择对话框:filedai 阅读全文
posted @ 2022-08-01 12:29
随遇而安==
阅读(187)
评论(0)
推荐(0)
摘要:
Tkinter 还提供了几个常用的布局管理控件,比如 Frame 、LabelFrame 等,这些控件的主要作用是为其他控件提供载体,并将主窗口界面划分成多个区域,从而方便开发者对不同区域进行设计与管理。在前文讲解其他的 Tkinter 控件时,我们列举的大多数示例都是将控件直接放置在主窗口(即根窗 阅读全文
posted @ 2022-08-01 12:28
随遇而安==
阅读(408)
评论(0)
推荐(0)
摘要:
当我们在开发一个 GUI 程序的时候,布局管理发挥着非常重要的作用,它指的是通过管理控件在窗口中的位置(排版),从而实现对窗口和控件布局的目的。一个优秀的图形用户界面,更像是艺术家的作品,它会给用户非常良好的感官体验,因此布局管理不单单是枯燥的程序代码,更需要以“美”的角度去审视每一个细节,这才是学 阅读全文
posted @ 2022-08-01 12:27
随遇而安==
阅读(152)
评论(0)
推荐(0)
摘要:
Scrollbar 控件常用于创建一个水平或者垂直的滚动条,通常情况下,Scrollbar 控件可以与 Listbox、Text、Canvas 以及 Entry 等控件一起使。滚动条控件是 GUI 程序中经常使用的一种控件类型,它主要用来控制控件区域的可见范围,比如当 Text 控件的文本内容非常多 阅读全文
posted @ 2022-08-01 12:25
随遇而安==
阅读(733)
评论(0)
推荐(0)
摘要:
事件处理,是 GUI 程序中不可或缺的重要组成部分,相比来说,控件只是组成一台机器的零部件, 而事件处理则是驱动这台机器“正常”运转的关键所在,它能够将零部件之间“优雅”的贯穿起来,因此“事件处理”可谓是 GUI 程序的“灵魂”,同时它也是实现人机交互的关键。 对于“事件”这一名词,在讲解控件时也偶 阅读全文
posted @ 2022-08-01 12:25
随遇而安==
阅读(380)
评论(0)
推荐(0)
摘要:
Menu 控件(菜单控件)可以说是 GUI 中“精髓所在”,它以可视化的方式将一系列的“功能选项卡”进行分组,并在每个分组下又“隐藏”了许多其他的“选项卡”。当打开菜单时,这些选项卡就会“显式”的呈现出来,方便用户进行选择,比如 Windows 系统中记事本文件(.txt文件类型)的界面: 图1:M 阅读全文
posted @ 2022-08-01 12:24
随遇而安==
阅读(401)
评论(0)
推荐(0)
摘要:
Canvas 控件具有两个功能,首先它可以用来绘制各种图形,比如弧形、线条、椭圆形、多边形和矩形等,其次 Canvas 控件还可以用来展示图片(包括位图),我们将这些绘制在画布控件上的图形,称之为“画布对象”。 每一个画布对象都有一个“唯一身份ID”,这是 Tkinter 自动为其创建的,从而方便控 阅读全文
posted @ 2022-08-01 12:23
随遇而安==
阅读(299)
评论(0)
推荐(0)
摘要:
cale 控件,即滑块控件或标尺控件,该控件可以创建一个类似于标尺式的滑动条对象,用户通过操作它可以直接设置相应的数值(刻度值)。Scale 控件同样有许多应用场景,并且在我们日常工作中也会经常用到,比如电脑上调节音量的滑动条(数值范围 0-100),如下图所示: 图1:音量控件面板 Scale 控 阅读全文
posted @ 2022-08-01 12:22
随遇而安==
阅读(460)
评论(0)
推荐(0)
摘要:
单选框按钮控件(Radiobutton),同样允许用户选择具体的选项值,不过与 Listbox 相比,单选按钮控件仅允许用户选择单一的选项值,各个选项值之间是互斥的关系,因此只有一个选项可以被用户选择。Radiobutton 控件通常都是成组出现的,所有控件都使用相同的变量。Radiobutton 阅读全文
posted @ 2022-08-01 12:21
随遇而安==
阅读(533)
评论(0)
推荐(0)
摘要:
列表框(Listbox)和复选框(Combobox)是 Tkinter 中两个控件,由于其非常相似,本节将它们放在一起进行介绍。 Listbox控件 首先介绍一下列表框,即 Listbox。在使用 Tkinter 进行 GUI 编程的过程中,如果需要用户自己进行选择时就可以使用列表框控件。列表框中的 阅读全文
posted @ 2022-08-01 12:20
随遇而安==
阅读(701)
评论(0)
推荐(0)
摘要:
Text 文本控件是 Tkinter 中经常使用的控件,与 Entry 控件相比,Text 控件用于显示和编辑多行文本,而 Entry 控件则适合处理单行文本。Text 控件类似 HTML 中的<textarea>标签,允许用户以不同的样式、属性来显示和编辑文本,它可以包含纯文本或者格式化文本,同时 阅读全文
posted @ 2022-08-01 12:18
随遇而安==
阅读(1696)
评论(0)
推荐(0)
摘要:
Entry 控件是 Tkinter GUI 编程中的基础控件之一,它的作用就是允许用户输入内容,从而实现 GUI 程序与用户的交互,比如当用户登录软件时,输入用户名和密码,此时就需要使用 Entry 控件。Entry 控件使用起来非常简单,下面对该控件做简单的介绍。基本语法格式如下: tk_entr 阅读全文
posted @ 2022-08-01 11:25
随遇而安==
阅读(610)
评论(0)
推荐(0)

浙公网安备 33010602011771号