自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xu_xuekai的博客

专注于python爬虫的博客空间

  • 博客(33)
  • 收藏
  • 关注

原创 pyqt5初级:打造个性化简易计算器

pyqt是一个创建GUI应用程序的工具包。它是Python编程语言和Qt库的成功融合。Qt库是p目前最强大的库之一。需要安装pyqt5,pycharm,qt-designer,qt-pyuic,pyinstaller,具体得安装方法与环境配置请自行百度。第一步:布局,利用qt-designer搭建计算器得初级界面。如图,打开qt-designer然后点击创建,开始布局。拖拽12个push button到右面得编辑栏中,并设置成4*4的格局。然后全选中 右键---...

2020-05-15 17:48:19 574 2

原创 关于aws服务器购买之后没有挂载硬盘

之前公司买了一个爬虫服务器,是买的亚马逊得ec2,因为是为了跑爬虫得代码,而且爬虫不大,所以买了一个2核,8g得服务器。外加了一个50g得硬盘。但是用了一个月却发现没有内存了,经过检查之后才发现那个50g得硬盘根本就没有加载上。所以在这记录一下手动加载硬盘得过程(亚马逊得服务器是都需要手动加载得)。1,查看我们新加硬盘得位置   sudo fdisk --list  可以看到我们需要挂...

2018-12-29 16:44:48 3247

原创 利用flask构造爬虫接口(python初级)

爬虫很多时候除了能够做成项目在服务器上跑以外,还可以做成接口的形式够其他语言调用,即爬虫可以实时的镶嵌到app,web或者其他场景下,当有客户调用时就会启动,无人调用时,就静静的待着。下面说一下利用python中的flask框架来写一个简单的爬虫来供其他语言调用。初级入门很简单的web框架和爬虫之间的结合应用。如果有其他的应用需求,请自行研究。首先,导包不解释了,自行安装flask就可以了。...

2018-08-23 17:17:51 6347

转载 如何在scrapy中集成selenium爬取网页

如何在scrapy中集成selenium爬取网页1.背景我们在爬取网页时一般会使用到三个爬虫库:requests,scrapy,selenium。requests一般用于小型爬虫,scrapy用于构建大的爬虫项目,而selenium主要用来应付负责的页面(复杂js渲染的页面,请求非常难构造,或者构造方式经常变化)。在我们面对大型爬虫项目时,肯定会优选scrapy框架来开发,但是在解析复杂JS渲染的...

2018-04-16 13:31:03 896

转载 scrapy爬虫利用selenium实现用户登录和cookie传递

scrapy爬虫利用selenium实现用户登录和cookie传递1. 背景上篇讲解了如何在scrapy中集成selenium爬取一些特别复杂的页面(传送门:https://blog.csdn.net/zwq912318834/article/details/79773870),而事实上,在平时的爬取任务中,往往登录过程是最复杂的,其他页面相对来说比较简单。如果把过多的时间花费在破解登录上,得不偿...

2018-04-15 22:19:40 6668 1

转载 爬取网易财经中股票的历史交易数据

爬取网易财经中股票的历史交易数据需求分析得到股票代码股票代码的信息是在东方财富网中获取(http://quote.eastmoney.com/stocklist.html)得到股票的历史交易记录股票的历史交易记录是可以在网易财经中直接下载excel表的,地址(http://quotes.money.163.com/trade/lsjysj_603088.html#06f01)这是某一股票的历史交易...

2018-04-15 22:17:02 12965 4

转载 关于mongodb数据库的基本查询

准备数据db.stu.insert({name:'郭靖',hometown:'蒙古',age:20,gender:true})db.stu.insert({name:'黄蓉',hometown:'桃花岛',age:18,gender:false})db.stu.insert({name:'杨康',hometown:'大金',age:20,gender:true})db.stu.insert(...

2018-04-15 22:14:32 187

原创 关于mongodb数据库的增删改查

插入语法db.集合名称.insert(document)插入的内容是document(文档)类型,键值对形式,使用{}插入文档时,如果不指定参数_id,那么MongoDB会为文档分配一个唯一的ObjectID例如// 创建集合studentsdb.createCollection('students')// 向集合中插入一条学生数据db.students.insert({name:'张三'...

2018-04-15 22:12:35 329

原创 关于mongodb数据库的聚合

聚合(aggregate)主要用于计算数据,类似sql中的sum(),avg()。 db.集合名称.aggregate({管道:{表达式}})管道管道在Unix和Linux中一般用于将当前命令的输出结果作为下一个命令的输入在mongodb中,管道具有同样的作用,文档处理完毕后,通过管道进行下一次处理常用管道$group:将集合中的文档分组,可用于统计结果$match:过滤数据,只输出符合条件的...

2018-04-15 22:11:05 159

原创 关于mongodb数据库基础

MongoDB简介MongoDB是一个基于分布式文件存储的NoSQL数据库。由c++语言编写,运行稳定,性能高。旨在为WEB应用提供可扩展的高性能数据存储解决方案专有名词SQL术语/概念MongoDB术语/概念解释/说明databasedatabase数据库tablecollection数据库表/集合rowdocument数据记录行/文档columnfield数据字段/域indexindex索引t...

2018-04-15 22:09:27 168

原创 关于mongodb数据库

数据库命令在终端使用mongo连接服务端连接成功之后,默认使用的是test数据库查看当前的数据库名称db查看所有的数据库名称,列出所有在物理内存上存在的数据库show dbs切换数据库,如果数据库不存在也并不会去创建,知道插入数据或者创建集合时数据库才会被创建use 数据库名称删除当前所指向的数据库,如果数据库不存在,则什么也不会做db.dropDatabase()集合命令创建集合语法如下...

2018-04-15 22:08:01 151

原创 python中的垃圾回收机制

1、小整数对象池在程序中整数的使用非常的广泛,Python为了优化速度,使用了小整数对象池,避免为整数频繁申请和销毁内存的空间。 Python中对象小整数的定义时[-5,256],这些整数的对象时提前建立好的,不会被垃圾回收。在一个Python的程序中,所有位于这个范围内的整数使用的都是同一个对象。In [1]: a = -5In [2]: id(a)Out[2]: 10911520In...

2018-04-15 22:06:41 200

原创 python推导式

Python推导式(列表、字典、集合推导式)推导式comprehensions(又称解析式),是Python的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据序列的结构体。 共有三种推导,在Python2和3中都有支持:列表(List)推导式字典(Dict)推导式集合(Set)推导式1.列表推导式1.1 使用[]生成List基本格式:[out_exp_res for out_exp in...

2018-04-15 22:04:50 218

原创 python深拷贝与浅拷贝

深拷贝、浅拷贝1. 浅拷贝浅拷贝是对于一个对象的顶层拷贝通俗的理解是:拷贝了引用,并没有拷贝内容2. 深拷贝深拷贝是对于一个对象所有层次的拷贝(递归)进一步理解深拷贝3. 拷贝的其他方式分片表达式可以赋值一个序列字典的copy方法可以拷贝一个字典4. 注意点浅拷贝对不可变类型和可变类型的copy不同copy.copy对于可变类型,会进行浅拷贝copy.copy对于不可变类型,不会拷贝,仅仅是指向I...

2018-04-15 21:52:41 177

原创 闭包与装饰器

闭包1. 函数引用def test1(): print("--- in test1 func----")# 调用函数test1()# 引用函数ret = test1print(id(ret))print(id(test1))#通过引用调用函数ret()运行结果:--- in test1 func----14021257114904014021257114904...

2018-04-11 11:35:02 116

原创 mysql高级

视图1. 问题对于复杂的查询,往往是有多个数据表进行关联查询而得到,如果数据库因为需求等原因发生了改变,为了保证查询出来的数据与之前相同,则需要在多个地方进行修改,维护起来非常麻烦解决办法:定义视图2. 视图是什么通俗的讲,视图就是一条SELECT语句执行后返回的结果集。所以我们在创建视图的时候,主要的工作就落在创建这条SQL查询语句上。视图是对若干张基本表的引用,一张虚表,查询语句执行的结果,不...

2018-04-11 11:32:32 205

原创 mysql与python的交互

准备数据创建数据表-- 创建 "京东" 数据库create database jing_dong charset=utf8;-- 使用 "京东" 数据库use jing_dong;-- 创建一个商品goods数据表create table goods( id int unsigned primary key auto_increment not null, name...

2018-04-11 11:28:46 207

原创 关于mysql数据库的查询命令

查询所有字段select * from 表名;查询指定字段select 列1,列2,... from 表名;使用 as 给字段起别名select id as 序号, name as 名字, gender as 性别 from students;可以通过 as 给表起别名select s.id,s.name,s.gender from students as s;消除重复行select distin...

2018-04-11 11:20:42 204

原创 关于正则表达式

re.S表示匹配换行符 re.I表示忽略大小写忽略转移符号带来的转移

2018-04-11 10:56:37 122

转载 python爬虫并发并行下载

1一百万个网站1用普通方法解析Alexa列表2复用爬虫代码解析Alexa列表2串行爬虫3并发并行爬虫0并发并行工作原理1多线程爬虫2多进程爬虫4性能对比这篇将介绍使用多线程和多进程这两种方式并发并行下载网页,并将它们与串行下载的性能进行比较。1一百万个网站亚马逊子公司Alexa提供了最受欢迎的100万个网站列表(http://www.alexa.com/topsites ),我们也可以通过http...

2018-04-11 10:46:27 2576

转载 提取JS动态网页数据

动态网页示例对加载内容进行逆向工程1通过开发者工具的逆向工程2通过墨盒测试的逆向工程21搜索条件为空时22用号匹配时22用号匹配时渲染动态网页1使用WebKit渲染引擎2使用Selenium自定义渲染现在大部分的主流网站都用JavaScript动态显示网页内容,这样使得我们之前提取技术无法正常运行。本篇将介绍两种提取基于JS动态网页的数据。JavaScript逆向工程渲染JavaScript1.动...

2018-04-11 10:46:09 864

转载 验证码处理

获得验证码图片光学字符识别验证码用API处理复杂验证码1 9kw打码平台11 提交验证码12 请求已提交验证码结果12与注册功能集成验证码(CAPTCHA)全称为全自动区分计算机和人类的公开图灵测试(Completely Automated Public Turing test to tell Computersand Humans Apart)。从其全称可以看出,验证码用于测试用户是真实的人类还...

2018-04-11 10:45:28 424

转载 scrapy框架

安装Scrapy新建项目1定义模型2创建爬虫3优化设置4测试爬虫5使用shell命令提取数据6提取数据保存到文件中7中断和恢复爬虫使用Portia编写可视化爬虫1安装2标注3优化爬虫4检查结果使用Scrapely实现自动化提取1.安装Scrapy用pip命令安装Scrapy:pip install Scrapywu_being@ubuntukylin64:~/GitHub/WebScrapingW...

2018-04-11 10:44:24 311

原创 爬取糗事百科段子(纯代码)

#-*- coding:utf-8 -*-import requestsfrom lxml import etreeimport jsonclass Qiushi:    def __init__(self):        self.headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKi"  ...

2018-04-11 10:43:09 318

转载 scrapy同时启动多个爬虫

 一、创建spider  1、创建多个spider,scrapy genspider spidername domainscrapy genspider CnblogsHomeSpider cnblogs.com  通过上述命令创建了一个spider name为CnblogsHomeSpider的爬虫,start_urls为http://www.cnblogs.com/的爬虫  2、查看项目下有几...

2018-04-10 17:15:00 5780

转载 Scrapy可视化管理软件SpiderKeeper

通常开发好的Scrapy爬虫部署到服务器上,要不使用nohup命令,要不使用scrapyd。如果使用nohup命令的话,爬虫挂掉了,你可能还不知道,你还得上服务器上查或者做额外的邮件通知操作。如果使用scrapyd,就是部署爬虫的时候有点复杂,功能少了点,其他还好。SpiderKeeper是一款管理爬虫的软件,和scrapinghub的部署功能差不多,能多台服务器部署爬虫,定时执行爬虫,查看爬虫日...

2018-04-10 17:11:59 451

原创 利用百度打造自己的百度终端翻译

因为我们利用的是百度翻译,而我们发送的也是一个post请求,所以利用requests.get方法肯定是不能达到目的,我们需要使用requests.post方法。以下是post方法所用到的参数:data就是我们需要发送的参数我们看看我们怎么样通过浏览器发送的post请求,利用谷歌浏览器:我们关注Form Data里面的内容:这里就是我们post请求所需要的data数据,但是不难看出,sign和tok...

2018-04-10 16:54:04 318

原创 python爬虫初级,requests基本用法

1,requests的作用: 发送网络请求,返回响应数据2,那为什么使用requests,而不是urllib? 1,requests的底层实现就是urllib 2,requests在python2和python3中通用,方法完全相同 3,requests简单易用 4,requests能够自动帮助我们解压网页内容3,使用方法举例 使用终端打开ipython3...

2018-04-10 16:52:30 1558

原创 requests模拟登录的三种方法

1.利用session模拟登陆首先我们看一下requests中session的使用方法我们来爬一下人人网首页的代码,其代码如下:其中post_url是我们点击登陆时,该页面需要跳转的页面url,具体查找方式如下:我们来到登陆页面,在输入栏的地方右键点击检查,找到form表单中的action,就是我们想要得到的url地址post_data数据是以字典的方式发送,其中的键就是我们标签中的name标签...

2018-04-10 16:37:04 4082

原创 爬虫遇到异常怎么发送邮件

2018-04-10 16:29:41 890

原创 selenium与phantomjs,爬虫利器

1,获取请求driver.get(url)2,退出driver.quit()3,获取id元素driver.find_element_by_id("id")4,获取input标签的id并输入内容 driver.find_element_by_id("id").send_kesy("")5,获取确定或点击等按钮,做点击事件driver.find_element_by_id("id").click()6...

2018-04-10 16:24:15 652

原创 Gerapy分布式爬虫管理框架详解,国人开发的好用的爬虫框架

从 Scrapy 的部署、启动到监控、日志查看,我们只需要鼠标键盘点几下就可以完成,那岂不是美滋滋?更或者说,连 Scrapy 代码都可以帮你自动生成,那岂不是爽爆了?有需求就有动力,没错,Gerapy 就是为此而生的,GitHub:https://github.com/Gerapy/Gerapy。安装Gerapy 是一款分布式爬虫管理框架,支持 Python 3,基于 Scrapy、Scrapy...

2018-04-10 16:13:40 1134

原创 初识python爬虫

1,爬虫的定义:模拟客户端发送请求,并获取响应,理论上来说,客户端能做的事情,一般爬虫都能做。2,爬虫的分类:分为通用爬虫和聚焦爬虫通用爬虫:搜索引擎的爬虫,一般爬取多个网站,例如百度,新浪新闻等聚焦爬虫:针对某个特定的网站,爬取需要的数据3,爬虫的工作流程:4,第一个爬虫(爬取百度首页源代码)解释:首先必须对python基础有一定的了解,并安装pycharm等编辑器,并且我们这里运用的pytho...

2018-02-26 11:43:53 415

空空如也

空空如也

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

TA关注的人

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