搜索到与相关的文章
Python

python爬虫项目设置一个中断重连的程序的实现

做爬虫项目时,我们需要考虑一个爬虫在爬取时会遇到各种情况(网站验证,ip封禁),导致爬虫程序中断,这时我们已经爬取过一些数据,再次爬取时这些数据就可以忽略,所以我们需要在爬虫项目中设置一个中断重连的功能,使其在重新运行时从之前断掉的位置重新爬取数据。实现该功能有很多种做法,我自己就有好几种思路,但是真要自己写出来就要费很大的功夫,下面我就把自己好不容易拼凑出来的代码展示出来吧。首先是来介绍代码的思路:将要爬取的网站连接存在一个数组new_urls中,爬取一

系统 2019-09-27 17:56:18 2497

Python

跟老齐学Python之总结参数的传递

就前面所讲,函数的基本内容已经完毕。但是,函数还有很多值得不断玩味的细节。这里进行阐述。参数的传递python中函数的参数通过赋值的方式来传递引用对象。下面总结通过总结常见的函数参数定义方式,来理解参数传递的流程。deffoo(p1,p2,p3,...)这种方式最常见了,列出有限个数的参数,并且彼此之间用逗号隔开。在调用函数的时候,按照顺序以此对参数进行赋值,特备注意的是,参数的名字不重要,重要的是位置。而且,必须数量一致,一一对应。第一个对象(可能是数值

系统 2019-09-27 17:55:33 2497

Python

从头实现主成分分析(PCA)--Python

主成分分析是一种常用的降维方法,多见于数据预处理阶段,其伪代码如下:输入:样本数据集D={x1,x2,x3,x4},低空间维度数d'过程:1对所有样本进行中心化(每个特征维度都减去其均值)2计算所有样本的协方差矩阵3对协方差矩阵进行特征分解4取最大的d'个特征值的对应特征向量w1,w2,w3输出:投影矩阵W*=(w1,w2,wd')下面是其代码实现:首先是产生数据,我们使用sklearn的make_blobs方法产生三类数据,每类有三个特征。数据结构是(n

系统 2019-09-27 17:53:00 2497

Python

如何使用Python实现斐波那契数列

斐波那契数列(Fibonacci)最早由印度数学家Gopala提出,而第一个真正研究斐波那契数列的是意大利数学家LeonardoFibonacci,斐波那契数列的定义很简单,用数学函数可表示为:数列从0和1开始,之后的数由前两个数相加而得出,例如斐波那契数列的前10个数是:0,1,1,2,3,5,8,13,21,34。用Python实现斐波那契数列常见的写法有三种,各算法的执行效率也有很大差别,在面试中也会偶尔会被问到,通常面试的时候不是让你简单的用递归写

系统 2019-09-27 17:50:36 2497

Python

TensorFlow实战:SoftMax手写体MNIST识别(Python完整

今天这篇文章我们使用TensorFlow针对于手写体识别数据集MNIST搭建一个softmax的多分类模型。本文的程序主要分为两大模块,一个是对MNIST数据集的下载、解压、重构以及数据集的构建;另一个是构建softmax图及训练图。本程序主要是想去理解包含在这些代码里面的设计思想:TensorFlow工作流程和机器学习的基本概念。本文所使用的数据集和Python源代码都已经上传到我的GitHub(https://github.com/ml365/soft

系统 2019-09-27 17:48:13 2497

Python

Python多线程爬虫简单示例

python是支持多线程的,主要是通过thread和threading这两个模块来实现的。thread模块是比较底层的模块,threading模块是对thread做了一些包装的,可以更加方便的使用。虽然python的多线程受GIL限制,并不是真正的多线程,但是对于I/O密集型计算还是能明显提高效率,比如说爬虫。下面用一个实例来验证多线程的效率。代码只涉及页面获取,并没有解析出来。#-*-coding:utf-8-*-importurllib2,timeim

系统 2019-09-27 17:37:48 2497

编程技术

AndroMDA:是真正的MDA实现吗?

这里有一个老外的blog,其中对AndroMDA是否真正的MDA提出了疑问:http://andrej.racchvs.com/archives/2003/08/10/is-andromda-really-a-mda-tool/内容如下:IsAndromdareallyaMDAtool?TheAndromdaprojectjustreleasedversion2oftheirtool.AccordingtotheirwebsiteAndromdaisano

系统 2019-08-29 23:46:39 2497

Java

java5.0注释详解

一、什么是注释说起注释,得先提一提什么是元数据(metadata)。所谓元数据就是数据的数据。也就是说,元数据是描述数据的。就象数据表中的字段一样,每个字段描述了这个字段下的数据的含义。而J2SE5.0中提供的注释就是java源代码的元数据,也就是说注释是描述java源代码的。在J2SE5.0中可以自定义注释。使用时在@后面跟注释的名字。二、J2SE5.0中预定义的注释在J2SE5.0的java.lang包中预定义了三个注释。它们是Override、Dep

系统 2019-08-29 23:41:26 2497

编程技术

GridView中删除一列时,弹出询问对话框,及选中

GridView中删除一列时,弹出询问对话框,如下图所示:后台代码:protectedvoidGridUsers_RowDataBound(objectsender,GridViewRowEventArgse){if(e.Row.Cells[0].HasControls()){LinkButtonBtnDelete=(LinkButton)e.Row.Cells[0].Controls[2];LinkButtonBtnUpdate=(LinkButton)

系统 2019-08-29 23:37:23 2497