- 博客(22)
- 资源 (2)
- 收藏
- 关注
原创 MongoDB数据库的深入讲解
mongodb数据库 可以在官方下载 导入 import pymongo # 创建一个连接对象 client = pymongo.MongoClient( host="127.0.0.1", port=27017 ) # 找到一个数据库 class是数据库名 db = client['class'] # 第二种方法找到一个数据库: db = client.class # class是数据库名 # 找到数据库中对应的表 students是表名 collection = db["students"] # 第
2020-09-02 15:18:46
197
原创 PyQuery中的text、attr、html属性区别
用下面的HTML代码讲解: html = ''' <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>demo</title> </head> <body> <div id = container> <ul class="list1"> <li cl
2020-08-30 11:15:52
808
原创 pyquery----强大的爬虫搜索工具
pyquery 爬虫工具 导入pyquery : from pyquery import PyQuery 取代码块: doc = PyQuery("HTML代码") doc = PyQuery(url = "请求页面URL") doc = PyQuery(filename = "文件路径") CSS选择----缩小范围 以一个HTML页面举例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF
2020-08-27 17:21:42
415
转载 python-logging模块的详细解析
在UI自动化应用中,经常会出错,打log就是一个很重要的环节,python的logging.basicConfig函数 真是既方便,又简单,每次粘贴到用例前,就可以打log了。 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等。 相比print,具备如下优点: 可以通过设置不同的日志等级,在release版本中只输出重要信息,而不必显示大量的调试信息; print将所有信息都输出到标准输出中,严重影响开发者从标准输出中查看其它数据;l
2020-08-26 12:15:17
226
原创 爬虫之Cookie模拟账号登陆
问题描述 比如像百度,知乎等必须要登录才可以爬取信息的网站,我们必须要模拟自己的账号进行登录。 Cookie在百度百科中的解释是: 是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存的信息 通俗点说,Cookie就是网站服务器验证登录的一种手段,第一次登录分配一个Cookie代码。Cookie代码有一定的期限,超过规定的...
2020-05-06 17:56:02
753
原创 爬虫重点回顾
文章目录爬虫的主要步骤:请求打开目标网页使用http处理器对象:构建代理处理器对象 :注意:可以将Opener设置为全局对象阅读网页和解码 爬虫的主要步骤: 1 创建请求 2 打开目标网页 3 阅读网页 4 解码 5 找关键代码分析代码 6 根据规律使用正则表达式 7 文件读写 请求 请求的时候,可以使用默认的request请求 当然也可以自定义请求对象: ——request.Request() ...
2020-05-04 22:12:57
309
原创 headFirst_设计模式
多种设计模式的综合应用 创建鸭子: 红头鸭、绿头鸭 使用抽象工厂模式(或者工厂模式) 计数功能:使用装饰模式 新产品:使用适配器模式 多个产品:使用组合模式的变式、迭代器模式 记录行为:观察者模式 ...
2020-05-01 17:58:32
132
原创 软件设计模式——单件模式:创建唯一实例
单件模式: 单件模式是一种用于确保整个应用程序中只有一个类实例 且这个实例所占资源在整个应用程序中是共享时的程序设计方法 package single; //单件模式 ,只能创建一个对象 //构造类私有或者被保护权限 //static 当前对象 //一个方法 static getInstance()创建唯一的实例 public class Log { private Log(){ Sys...
2020-04-29 18:29:42
339
原创 设计模式抽象工厂的代码讲解
代码背景 工厂生产小球和对应的盒子,材质有两种,皮质的和钢制的 先写两种材质的小球 MagicPipe是管理工厂的类 在这里插入代码片
2020-04-29 10:47:13
480
原创 有趣的数据结构
java中的堆栈 public class test { public static void main(String[] args) { int j = 0; for(int i=0; i<10;i++){ j=(j++); //System.out.println(j); } System.out.println(j); } } 输出竟然是 0 j = j++...
2020-04-27 23:43:06
262
原创 祖玛实例分析工厂方法
分析实例 这是一个祖玛的简单实例,工厂负责创建产品。有一个抽象工厂,被具体的工厂继承。抽象工厂中写了小球的抽象创建方法: public abstract class MagicPipeFactory { public abstract Ball MakeBallFactoryMethod(); } 产品也有抽象的产品:小球 public abstract class Ball { //打印信息 ...
2020-04-27 16:03:09
354
原创 爬虫之——处理get请求
get请求 我们都知道在上传表单的时候,有两种方法: post和get方式 其中 post方法是加密传输的 get方法是明码传输 下面说说get方法 当在搜索框搜索一个中文字符时,会加密显示在地址栏中: 比如我在百度中搜索“中国” 地址栏是这样的 https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&...
2020-04-25 18:58:55
580
转载 不同浏览器的userAgent
一、基础知识篇: HttpHeader之User-AgentUserAgent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,UserAgent也简称UA。它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及版本、操作系统及版本、浏览器内核、等信息的标识。通过这个标识,用户所访问的网站可以显示不同的排版从而为用户提供更好的体验或者进行信息统计;例如用手机访问谷歌和电脑访...
2020-04-25 18:38:41
2012
原创 爬虫自定义创建Opener
爬虫库中的urllib.request.urlopen 可以创建一个opener,但他是特殊的opener,是模块自动帮我们创建好的 为什么要自定义一个Opener呢? urlopen() 方法不支持 代理、 Cookie、 和其他的http/https等的高级功能 代理:如果一直用一台电脑去访问某个网页,IP地址是一样的,服务器会捕获这个消息,阻挡你的访问;但添加代理后可以使用其他的IP地址来访...
2020-04-25 18:29:31
563
原创 爬虫的自创建请求对象:报错AttributeError: 'str' object has no attribute 'items'
在使用爬虫库创建自定义请求对象时 将值传入headers agent = random.choice(userAgent) REQ = request.Request(url,headers=agent) 报错 AttributeError: 'str' object has no attribute 'items' 查看源码属性的类型 是键值对型 将传入的值放入字符串中即可: agent = r...
2020-04-25 09:15:05
1899
1
原创 爬虫使用多个user-Agent
为什么要使用多个user-Agent? 因为我们的爬虫到时候是一直循环的,每次爬取的时间间隔较短,目标网页容易发现同一个浏览器浏览太快这个漏洞,导致爬取不顺利,所以使用多个user-Agent来进行爬取访问,是一个随机的过程 怎么样使用? 以一个简单的爬取百度标题为例 ...
2020-04-25 08:59:58
1045
转载 Java接口的知识点学习
文章目录接口概述接口和类的区别和联系接口和类的相同点:接口和类的不同点:抽象类和接口的区别:接口特性:例子:接口实现接口的继承接口的多继承 接口概述 在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。 接口没有成员变量,除了static 和 final变量 接口不能包含具体的类的实现过程。 接口所有的方法都...
2020-04-24 11:46:35
366
转载 抽象方法
抽象方法 在抽象类中不进行具体阐述的方法,具体的实现抽象类的子类确定 抽象方法必须在抽象类中才可以使用 继承抽象类的子类必须实现抽象方法,否则必须声明成抽象类 抽象方法没有定义,方法名后面直接跟一个分号,而不是花括号 代码: public abstract class Employee { private String name; private String address; ...
2020-04-24 11:17:57
138
转载 抽象类和接口的问题
抽象类 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 抽象类不能够实例化对象, 抽象类只能被继承或者被当做接口实现。 /* 文件名 : Employee.java */ public abstract class Employee { private String na...
2020-04-24 11:10:23
141
原创 urllib.request自动创建请求对象和自主创建请求对象的区别
自动创建请求对象 reponse = urllib.request.urlopen(url).read().decode() 只封装了URL信息,其他信息不能人为干预修改 自主创建请求对象 #调用Request方法创建对象 REQ = urllib.request.Request(url) reponse = urllib.request.urlopen(REQ).read().decode() ...
2020-04-23 17:43:52
134
原创 爬取baidu网站
文章目录代码代码解释处理中文数据清洗 代码 import urllib.request url = r"http://www.baidu.com" res = urllib.request.urlopen(url).read() print(res) 代码解释 其中代码的汉字部分使用二进制的中间部分表示的 在文章后面会解码来还原汉字的表达 urllib.request 可以请求到网页的页面,...
2020-04-23 17:22:22
244
原创 爬虫、服务器的原理
爬虫原理服务器的大体架构爬虫URL请求方式重要的两个属性Cookie和userAgent 服务器的大体架构 服务器里面有前端代码、中间层和数据库,其中中间层负责数据的处理。用户通过浏览器发出请求后被中间层拿到,向数据库进行请求,同意请求之后向前端进行数据的展示。 爬虫 爬虫中是通过代码直接对服务器发送请求,通过一个变量来接受信息,然后我们对信息进行数据的清洗,得到结果 URL 概念:用于完整的描述...
2020-04-23 13:34:29
748
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人