自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 多线程爬取豆瓣用户

多线程爬豆瓣用户import threadingimport timeimport requestsfrom pymongo import MongoClientimport jsonclass myThread(threading.Thread): # 继承父类threading.Thread def __init__(self, url): threa...

2019-08-07 10:41:00 511

原创 redis与python的交互

安装包pip3 install redis引用模块from redis import *这个模块提供了StrictRedis对象,用于连接redis服务器,按照不同类型提供不同方法,进行操作StrictRedis对象方法通过init创建对象,指定参数host、port与指定的服务器和端口连接,host默认为localhost,port默认为6379根据不同的类型,拥...

2018-04-15 20:20:03 720

原创 redis数据操作

数据操作redis是key-value数据结构,每条数据都是一个键值对键的类型是字符串,并且键不能重复值得类型分为五种 字符串string哈希hash列表list集合set有序集合zsetstring(字符串)string是redis最基本的类型,最大能存储512mb数据,string类型是二进制安全的,可以存储任何数据,如图片,数字等.增加和修改如果设...

2018-04-15 20:09:41 274

原创 redis数据库简介与安装

redis简介redis是一个开源的用ANSI C语言编写,支持网络,基于内存也可以持久化的日志型,key-value型数据库可以用作数据库,缓存和消息中间价是高新能的键值对存储系统,包括string(字符串)、list(链表)、zset(sortedset—有序集合)、hash(哈希类型)支持主从同步redis安装Ubuntu下安装可以选择sudo apt-get...

2018-04-15 19:15:52 252

原创 MongoDB与python交互

安装模块pip3 install pymongo引入模块from pymongo import *提供对象进行交互MongoClient对象:用于与MongoDB服务器建立连接DataBase对象:对应着MongoDB中的数据库Collection对象:对应着MongoDB中的集合Cursor对象:查询方法find()返回的对象,用于进行多行数据的遍历MongoC...

2018-04-15 18:53:19 345

原创 MongoDB数据库备份与恢复

MongoDB数据库备份mongodump -h dbhost -d dbname -o dbdirectory-h: 服务器地址,也可以指定端口号-d: 需要备份的数据库名称-o: 备份的数据存放位置,此目录中存放着备份出来的数据例如:mongodump -h 192.168.19.25:27017 -d test1 -o ~/Desktop/test1bakMongo...

2018-04-15 18:31:37 328

原创 MongoDB数据库查询、聚合、索引

数据查询find()方法db.集合名称.find({条件文档})findOne()方法 只返回一个db.集合名称.findOne({条件文档})pretty() 将结果格式化db.集合名称.find({条件文档}).pretty()比较运算符等于,默认是等于判断,没有运算符小于$lt小于或等于$lte大于$gt大于或等于$gte不等于$ne...

2018-04-15 18:23:48 1199

原创 MongoDB数据库基本操作

MongoDB与mysql SQL术语/概念 MongoDB术语/概念 解释/说明 database database 数据库 table collection 数据库表/集合 row document 数据记录行/文档 column field 数据字段/域 index index 索引 ...

2018-04-14 14:33:31 252

原创 python与mysql交互,插入数据

#encoding=utf-8# 向学生表中插入一条数据from pymysql import *if __name__=='__main__': try: #创建Connection连接 conn=connect(host='localhost',port=3306,database='test1',user='root',password='my...

2018-04-14 14:06:11 1585

原创 python中操作mysql

python中操作mysql步骤安装模块pip install pymysql引入模块from pymysql import *Connection 对象用于建立与数据库的连接创建对象,调用connect()方法conn=connect(参数列表)参数host: 连接mysql主机port:连接mysql主机的端口,默认3306database:数据库名称...

2018-04-14 13:58:31 283

原创 mysql视图、事物、索引

视图对于复杂的查询,在多个地方被使用,如果需求发生了改变,需要更改sql语句,则需要在多个地方进行修改,维护起来非常麻烦解决:定义视图视图本质就是对查询的封装定义视图,建议以v_开头create view 视图名称 as select语句;例如:创建视图,查询学生对应的成绩信息create view v_stu_sco as select students.*,sc...

2018-04-14 11:22:41 250

原创 mysql 数据库 查询相关

查询相关指定别名 as​ select students.id,students.name from students​ select s.id,s.name from students as s;消除重复行​ select distinct 列1,… from 表名使用where字句对数据筛选select * from 表名 where 条件比较运算符等于: =...

2018-04-13 21:23:14 251

原创 Scrapy 框架简单介绍

scrapy框架Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛。框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。Scrapy 使用了 Twisted(其主要对手是Tornado)异步网络框架来处理网络通讯,可以加快我们的下载速度,不用自己去实现异步框架,并且包含了各种中间件接口...

2018-04-13 19:46:07 2894

原创 selenium例子--模拟百度搜索

# coding=utf-8from selenium import webdriverimport time#实例化一个浏览器driver = webdriver.Chrome()# driver = webdriver.PhantomJS()#设置窗口大小# driver.set_window_size(1920,1080)#最大化窗口driver.maximize_w...

2018-04-12 18:03:39 1977

原创 爬虫--selenium和PhantomJS

#现阶段爬虫已经能够爬取大部分网页,但仍有一部分不能完成爬取,为了反反爬虫,给出建议尽量减少请求次数 能抓列表页就不抓详情页尽量保存html页面,为排错和重复请求使用关注网站所有的类型页面 wap页面,如百度贴吧极简版h5页面app多伪装 动态的User-Agent使用代理ip 为放置多次请求封ip能不用cookie就不用利用多线程分布式 在不被禁止的情况下,尽可能...

2018-04-12 09:01:35 811

原创 多线程--爬虫--嗅事百科

# coding=utf-8import requestsfrom lxml import etreeimport threadingfrom queue import Queueclass QiubaiSpdier: def __init__(self): self.url_temp = "https://www.qiushibaike.com/8hr/pag...

2018-04-10 19:19:21 254

原创 多线程爬虫

多线程爬虫需要用到queue队列对象,这个模块将在后续文章中总结,这里仅仅说用法Queue(队列对象)​ Queue是python中的标准库,可以直接用import Queue来引用,队列是线程之间最为常用的数据交换形式Queue中常用的方法Queue.qsize() # 返回队列的大小Queue.empty() # 如果队列为空,返回true,反之返回false...

2018-04-10 19:18:14 217

原创 爬虫 --xpath运用--嗅事百科

# coding=utf-8import requestsfrom lxml import etreeclass QiubaiSpdier: def __init__(self): self.url_temp = "https://www.qiushibaike.com/8hr/page/{}/" self.headers = {"User-Age...

2018-04-10 18:55:11 424

原创 爬虫小结

实现爬虫的套路首先准备url,明确爬取的目标准备start_urlurl地址规律不明显,总数不确定的话,用正则或者xpath提取通过代码提取下一页urlxpath寻找url地址,部分参数会在当前响应中,如当前页码数或者页码总数准备url_list页码数明确url规律明显发送请求,获取响应添加随机User-Agent,反反爬虫添加随机的代理ip地址,反反爬虫如果被对...

2018-04-10 18:53:01 264

原创 xpath--贴吧爬虫

# coding=utf-8import requestsfrom lxml import etreeimport jsonclass TiebaSpider: def __init__(self,tieba_name): self.tieba_name = tieba_name self.start_url = "http://tieba.bai...

2018-04-09 20:07:42 1120

原创 数据提取--xpath

什么是xpath XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历。 W3School官方文档:http://www.w3school.com.cn/xpath/index.asp节点的选取XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。这些路径表达式和我们在常规的...

2018-04-09 20:05:11 1249

原创 json--数据提取--内涵段子

# coding=utf-8import requestsimport jsonclass DoubanSpider: def __init__(self): self.url_temp_list = [ { "url_temp": "https://m.douban.com/rexxar/api/v2/sub...

2018-04-09 19:49:30 970

原创 爬虫提取数据--JSON

JSON​ JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。适用于进行数据交互的场景,比如网站前台与后台之间的数据交互。​ 官方文档:http://docs.python.org/library/json.html​ Json在线解析网站:http://www.j...

2018-04-09 19:44:45 10569

原创 正则例子---爬取内涵段子

正则例子,爬取内涵段子# coding=utf-8import requestsimport reimport jsonclass Neihan: def __init__(self): self.start_url = "http://neihanshequ.com/" self.next_url_temp = "http://neiha...

2018-04-09 19:13:08 357

原创 爬虫数据的提取--正则

数据的提取​ 简单的说,数据提取就是从响应中获取我们想要的数据的过程数据的分类非结构化的数据:html等处理方法:正则,xpath结构化的数据:json,xml等处理方法:转化为python数据类型正则表达式​ 正则表达式又称为规则表达式,通常被用来检索和替换哪些符合某个规则的文本 正则表达式匹配规则python中的re模块py...

2018-04-09 19:10:30 2096 2

原创 mysql数据库相关命令

数据库相关查看所有数据库​ show database;使用数据库​ use 数据库名;查看当前使用的数据库​ select databses();创建数据库​ create database 数据库名 charset=utf8;删除数据库​ drop database 数据库名;数据表相关查看当前数据库中所有表​ show tables;查...

2018-04-09 16:40:16 420

原创 MySQL数据库安装配置相关

MySQL数据库的安装Linux平台用如下命令​ sudo apt-get install mysql-server 服务端​ sudo apt-get install mysql-client 客户端安装的过程中会提示输入密码,所以要记号密码​mysql服务的启动​ sudo service mysql startmac平台​ mysql.server sta...

2018-04-09 16:37:10 179

原创 关系型数据库相关概念

RDBMS​ Relational Datebase Management System​ 通过表来表示关系型关系型数据库的主要产品oracle:在以前的大型项目中使用,银行,电信等项目mysql:web时代使用最广泛的关系型数据库ms sql server:在微软的项目中使用sqlite:轻量级数据库,主要应用在移动平台关系型数据库核心元素数据...

2018-04-09 16:29:10 755

原创 requests库的使用

Requests库​ requests库底层实现是有urllib​ requests在python2和python3中通用​ 其作用是发送网络请求,返回响应数据​ 中文文档 API: http://docs.python-requests.org/zh_CN/latest/index.html如何发送请求​ r...

2018-04-06 18:33:02 661

原创 HTTP和HTTPS相关

HTTP+HTTPSHTTP是一个客户端终端(用户)和服务器端(网站)请求和应答的标准(TCP)。通过使用网页浏览器、网络爬虫或者其它的工具,客户端发起一个HTTP请求到服务器上指定端口(默认端口为80)。我们称这个客户端为用户代理程序(user agent)。应答的服务器上存储着一些资源,比如HTML文件和图像。我们称这个应答服务器为源服务器(origin server)。在用户代理和源服...

2018-04-01 15:49:26 1041

原创 爬虫的基础知识

爬虫的概念​ 网络爬虫(网页蜘蛛,网络机器人)就是模拟浏览器发送网络请求,接收响应,一种按照一定的规则自动的爬取互联网信息的程序.​ 理论上来说,只要浏览器能做的事情,原则上爬虫都能爬取爬虫分类通用爬虫搜索引擎爬虫,面向整个互联网上所有的网站聚焦爬虫针对特定的网站爬虫​ROBOTS协议​ 网站通过Robots协议高速搜索引擎哪些页面可以...

2018-04-01 14:35:28 312

原创 Linux中文件压缩和解压

文件的压缩压缩格式tar zcvf 压缩后的文件名 将要压缩的文件文件解压tar xf 压缩后的文件名命令参数详解z 指定压缩文件的格式为 tar.gzc 表示压缩v 显示详细过程f 指定压缩文件x 解压查看压缩文件内容zcat 压缩文件...

2018-03-30 21:03:43 232

原创 shell中的流程控制

shell中的流程控制if语句单分支if语句语法格式if [条件]then指令fi双分支if语句语法格式if [条件]then指令1else指令2fi多分支if语句if [条件]then指令1elif [条件2]then指令2else指令3ficase选择语句case语句格式case 变量名 in值1) ...

2018-03-30 20:58:52 193

原创 Linux常见符号和shell中常用命令

Linux常见符号和命令重定向符号在shell中常见的重定向符号有 > 和 >>>符号表示将符号左侧的内容,以覆盖的方式输入到右侧的文件中>>符号表示将符号左侧的内容,以追加的方式输入到右侧文件的末尾管道符命令格式命令1 | 命令2命令1执行后的结果,传递给命令2使用其他符号后台展示符 &...

2018-03-30 20:36:22 352

原创 SHELL进阶

SHELL进阶测试语句test 条件表达式[ 条件表达式 ]比较常用第二种方式,第二种方式方括号和表达式中间有一个空格条件成功,状态返回值是0;条件失败,返回值是非0逻辑表达式命令1 && 命令2如果命令1执行成功,那么才执行命令2如果命令1执行失败,那么命令2页不执行命令1 || 命令2如果命令1执行成功,那么命令2不执行如果命...

2018-03-30 19:46:34 179

原创 SHELL基础知识

SHELL基础知识创建脚本创建脚本常见的编辑器是 vi/vim脚本的命名shell脚本命名与python一样,要起到见名知意的作用注释单行注释​ 除了首行的#不是注释外,其他所有的内容,以#开头均为注释多行注释​ 多行注释有两种方式:​ :<<! XXX ! 或者 :<<字符 XXX 字符脚本的执行​ 脚本执行的方式有以下几种bash /path/to/script-na

2018-03-30 19:17:22 235

原创 SHELL的认识

shell是什么    在计算机科学中,shell就是一个命令解释器.位于操作系统和应用程序之间,是他们二者最为主要的接口,shell负责把应用程序的输入命令信息解释给操作系统,将操作系统指令处理后的结果解释给应用程序. shell就是在操作系统和应用程序之间的一个命令翻译工具.shell的分类    图形界面shell,即通常所说的桌面    命令行shell,分为Windows操作系统和Lin...

2018-03-28 19:07:30 593

空空如也

空空如也

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

TA关注的人

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