自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 scrapy分布式爬虫之Ubuntu下服务器的搭建

1.在windows下安装好分布式爬虫的相关模块,并且成功运行。 2.在Ubuntu上安装scrapy之前,需要先安装以下依赖: sudo apt-get install build-essential python3-dev libssl-dev libffi-dev libxml2 libxml2-dev libxslt1-dev zlib1g-dev 3.在wind...

2019-01-21 08:56:22 503 1

原创 twisted异步方式保存数据到mysql

在某些爬虫项目下,我们需要每次执行一条插入语句,就立即调用commit方法更新数据库,如果爬取时间太长,中途可能被迫中断,这样程序就不能执行close_spider中的commit。但如果在insert_db中直接加入commit,又会使程序执行变得很慢。这里就可以使用Twisted中提供的以异步方式多线程访问数据库的模块adbapi,可以显著提供程序访问数据库的效率。adbapi.Con...

2019-01-18 11:30:13 704 1

原创 scrapy框架异常之no more duplicates will be shown (see DUPEFILTER_DEBUG to show all duplicates)

今天在用scrapy爬虫时,报了下面的错误:2019-01-17 16:47:18 [scrapy.dupefilters] DEBUG: Filtered duplicate request: <GET https://newhouse.fang.com/house/s/b95/> - no more duplicates will be shown (see DUPEFILT...

2019-01-17 17:02:30 11292 2

原创 Scrapy框架之Setting.py的配置详解

#项目名称,默认的USER_AGENT由它来构成,也作为日志记录的日志名BOT_NAME = 'jianshu_spider'# Scrapy搜索spider的模块列表 默认: [xxx.spiders]SPIDER_MODULES = ['jianshu_spider.spiders']#使用 genspider 命令创建新spider的模块。默认: 'xxx.spiders'NE...

2019-01-14 20:06:07 524

原创 StringBuffer与StringBuilder

String、StringBuffer和StringBuilder的区别String:是被final修饰的,它的长度是不可改变的,通过从concat()、replace()等方法改变并不能真正改变字符串,仅仅是改变了对象的引用而已。StringBuffer:长度可以改变,它是线性安全的。StringBuilder:长度可以改变,它是非线性安全的。它的运行速度比StringBuffer更...

2019-01-14 10:20:36 629 1

原创 java基础之String类

创建字符串char[] helloArray = {'H','e','l','l','o'};String helloString = new String(helloArray);System.out.println(helloString); //Hello字符串连接字符串的连接可以通过concat()方法或"+"操作来链接。System.out.printl...

2019-01-12 10:16:38 165

原创 Python爬虫之Chrome无头浏览器

Headless Browser(无头的浏览器)随着越来越多的web数据都是经过js处理的,对于爬虫来说就有这很大的难度,一般情我们使用selenium+phantomjs来去解析执行js,但是自2017  4月份后selenium不再维护phantojs接口,所以我么需要找一个替换的方式,好在chrome以及Firefox也提供了无界面操作方式。Headless Browser是没有图...

2019-01-10 21:08:32 2451 1

原创 Python爬虫之scrapy框架中ip代理池的设置

开放代理 class IpProxyDownloadMiddleware(object): PROXIES = ['110.52.235.131:9999','110.52.235.249:9999','112.17.38.141:3128'] def process_request(self,request,spider): proxy = rando...

2019-01-09 22:14:34 6025

原创 Python爬虫之scrapy框架随机请求头中间件的设置

方法一,定义一个存放请求头的列表,并从中随机获取请求头:   获取请求头的网址http://www.useragentstring.com/pages/useragentstring.php?name=All import randomclass UserAgentDownloadMiddleware(object): USER_AGENTS = [ 'Mo...

2019-01-09 22:11:06 1757

原创 java基础之数组

声明数组 格式①:数据类型[ ]   数组名 ;                // 推荐使用格式②:数据类型    数组名名[ ] ; 数组初始化 动态初始化:         只给长度,系统给出默认值int[] arr1 = new int[3];静态初始化:        给出值,系统决定长度int[] arr2 = {1,2,3,4,5...

2019-01-08 19:46:37 106 1

原创 java基础语法之基本数据类型和包装类

装箱与拆箱 装箱:自动的将基本数据类型转换为包装器类型。拆箱:自动将包装器类型转换为基本数据类型。 Int与Integer的区别 (1)、int是基本数据类型,int变量存储的是数值。Integer是引用类型,实际是一个对象,Integer存储的是引用对象的地址。(2)、两个new生成的包装类型比较,返回值为false。因为两个对象的内存地址不同。Integer i...

2019-01-08 19:28:17 188

原创 Python爬虫错误之twisted.web.error.SchemeNotSupported: Unsupported scheme: b''

在使用scrapy爬虫时,出现了下面了的错误Traceback (most recent call last): File "E:\project\venv\lib\site-packages\twisted\internet\defer.py", line 1416, in _inlineCallbacks result = result.throwExceptionIntoG...

2019-01-07 20:05:58 5384 2

原创 scrapy爬虫错误笔记------twisted.python.failure.Failure twisted.internet.error.ConnectionDone: Connection

今天使用scrapy爬虫的时候,运行时报了下面的错:Traceback (most recent call last): File "d:\python\lib\site-packages\scrapy\core\downloader\middleware.py", line 43, in process_request defer.returnValue((yield down...

2018-12-28 22:22:33 17648 5

原创 scrapy回调函数传递参数

在运用scrapy框架进行爬虫时,可能需要将附加数据传递给回调函数,下面将介绍两种向回调函数传递参数的方法。1.使用 lambda方式传递参数请求的回调是在下载该请求的响应时将被调用的函数。将使用下载的Response对象作为其第一个参数调用回调函数。 def parse(self, response): a_tag_list = response.css('...

2018-12-25 22:31:57 2198

原创 Python爬虫之pyquery获取不到元素

今天在做爬虫项目的时候出现了一个错误,通过pyquery获取不到元素。​from pyquery import PyQuery as pqhtml = '''<html xmlns="http://www.w3.org/1999/xhtml"><head> <title>TEST</title></head>&..

2018-12-16 21:34:08 2353

原创 Python scrapy在windows下的安装

windows下的安装步骤查看Python与scrapy是否安装首先在DOS的Python命令行查看是否已安装scrapyimport scrapy查看安装的Python环境变量是否已经配置,Python是否能被够正常运行pip -V接下来进行scrapy的依赖库的安装1.安装wheelpip install wheel当出现 Successfully installe...

2018-12-11 11:27:45 160

原创 python爬虫之用户验证

有些网站在打开时就会弹出提示框,直接提示你输入用户名和密码,验证成功后才能查看页面,如图所示:如果直接爬取网页信息会报错,如下面所示:from urllib import requesturl="http://localhost:8081/manager/html"response = request.urlopen(url)html = response.read().de...

2018-12-09 17:06:42 1979

原创 jQuery案例之全选、部分选择与反选

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">

2018-12-08 21:24:12 189

原创 python爬虫之代理与Cookie

代理通过此种方式会伪装自己的IP地址,服务器识别时会识别我们伪装的代理地址。from urllib import requestproxy_hander = request.ProxyHandler({ "http":"http://127.0.0.1:9743" "https":"http://127.0.0.1:9743"})open

2018-12-08 18:08:39 357

原创 Python爬虫之爬取图片

Python爬虫中图片的爬取方式有多种多样,本文将介绍几种常见的将图片保存的方式。1.通过urllib.urlretrieve来爬取图片基础知识介绍:urllib.urlretrieve(url[, filename[, reporthook[, data]]])参数说明:url:外部或者本地url filename:指定了保存到本地的路径(如果未指定该参数,urllib...

2018-12-07 23:25:21 409

原创 爬虫案例之人人网账号的登录

通过cookie来实现登录。首先,F12选中preserve log(保存日志,否则只显示每次响应的链接)。然后输入登录人人,可以看到有一条POST数据发送了出去,POST的数据内容也可以看得到。然后找到下面圈中的信息,作为请求头。 代码实现:from urllib import request,errorbase_url = "http://www.renren.com/...

2018-12-03 21:06:54 979

原创 javascript/jQuery案例之选择、全选、部分选择

javascript实现:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0&qu

2018-12-01 09:29:33 145

原创 jquery案例之二级菜单

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">

2018-12-01 08:36:41 205 1

原创 jQuery案例之三级联动

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>三级联动</title> <script src="../jQuery/jquery-1.8.3.js">&

2018-12-01 08:30:56 137

原创 linux进阶指令

df指令作用:查看磁盘空间语法:df -h -h : 表示以可读性较高的形式展示(如容量、已用、可用的表示)案例:   free指令作用:查看内存情况语法:free 选项选项 : -b:以Byte为单位显示内存使用情况;-k:以KB为单位显示内存使用情况;-m:以MB为单位显示内存使用情况;-o:不显示缓冲区调节列;-s&l...

2018-12-01 00:15:26 180

原创 jQuery案例之五星好评

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0">

2018-11-30 21:21:31 613

原创 javascript基础2

自定义属性 <div id="box" stuId = "1">张三</div><a href="#">删除</a> <script> var box = document.getElementById('box'); console.log(box.stuId); //当

2018-11-30 21:15:59 100

原创 python(元组)

 创建空元组方式1: 变量 = ()方式2: 变量 = tuple()创建单个元素的元组方式1: 变量= (值,)方式2: 变量 = 值,创建多个元素的元组方式1: 变量 = (值,值...)方式2: 变量 = 值,值... 注:   tuple 元组,其实跟列表差不多,存一组数,一旦创建,不能修...

2018-11-30 21:04:05 271

原创 javascript(常见的兼容性问题及解决办法)

     在javascript中经常遇到一些兼容性的问题,下面博主将列举一些常见的兼容性问题及解决办法处理innerText和textContent//处理innerText和textContentfunction getInnerText(element){ //判断element是否支持innerText if(typeof element.innerText === 'st...

2018-11-30 20:52:46 1566

原创 Python(列表)

创建空列表list1 = list()list2 = []快速创建列表的方式:#方法一a = []for i in range(1,10): a.append(i)print(a)#方法二b = list(range(1,10))print(b)#方法三c = [i for i in range(1,10)]print(c)[扩展]创建一个占用十个元素...

2018-11-28 01:08:37 102

原创 javascript基础知识

DOM(文档树模型)HTML DOM 是:• HTML 的标准对象模型• HTML 的标准编程接口• W3C 标准HTML DOM 定义了所有 HTML 元素的对象和属性,以及访问它们的方法。换言之,HTML DOM 是关于如何获取、修改、添加或删除 HTML 元素的标准。文档:一个网页可以成为文档节点:网页中所有的内容都是节点(标签、属性、文本、注释等)元素:网页中的标签...

2018-11-12 21:29:18 172

原创 Linux基础指令

ls指令用法一:ls含义:列出当前工作目录下的所有文件/文件夹的名称用法二:ls 路径含义:列出指定路径下的所有文件/文件夹的名称注:(关于路径)相对路径:相对首先要有一个参照物(一般时当前的工作路径);写法: “./”【表示当前目录下】,“…/”【上一级目录下】绝对路径:绝对路径不需要参照物,直接从根”/”开始寻找对应路径;用法三:ls 选项 路径含义:列出指定路...

2018-11-12 19:55:22 273

原创 Python基础知识

变量命名规则帕斯卡命名法:每个单词首字母大写MyName =“aaa”;驼峰命名法:第一个单词首字母小写后面字母大写myName = “aaa”;数据类型1).Number类型 数值类型2).String类型 字符类型3).List类型 列表类型4).Tuple类型 元组类型5).Dict类...

2018-11-12 19:19:24 125

原创 scrapy报错HTTP status code is not handled or not allowed

今天在使用scrapy爬取某网站时运行时报了如下错误:可在settings.py中添加如下代码来解决此问题:HTTPERROR_ALLOWED_CODES = [403]

2019-03-18 16:44:41 6904

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除