- 博客(39)
- 资源 (9)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 百度图片下载爬虫实战笔记
免责声明:本文所记录的技术手段及实现过程,仅作为爬虫技术学习使用,不对任何人完全或部分地依据本文的全部或部分内容从事的任何事情和因其任何作为或不作为造成的后果承担任何责任。爬取需求:根据关键字,爬取百度图片并下载到本地;爬取工具:chrome浏览器、pycharmPython库:request01网站结构分析打开百度首页,输入“美女”进行搜索:分析页面请求,是通过ajax请求后端请求获取数据:通过发送ajax请求,获取百度返回的json数据,解析j
2021-08-03 15:22:14
366
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 京东商品爬虫实战笔记
免责声明:本文所记录的技术手段及实现过程,仅作为爬虫技术学习使用,不对任何人完全或部分地依据本文的全部或部分内容从事的任何事情和因其任何作为或不作为造成的后果承担任何责任。爬取需求:爬取京东商城根据关键字搜索商品,商品的名称、价格、累计评价信息;爬取工具:chrome浏览器、pycharmPython库:selenium01网站结构分析打开京东首页,输入“手机”进行搜索:点击相关商品详情页,所有信息均可以在详情页找到。02创建Selen
2021-07-15 16:06:52
1435
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 淘宝商品爬虫实战笔记
免责声明:本文所记录的技术手段及实现过程,仅作为爬虫技术学习使用,不对任何人完全或部分地依据本文的全部或部分内容从事的任何事情和因其任何作为或不作为造成的后果承担任何责任。爬取需求:爬取淘宝网根据关键字搜索商品,商品的名称、价格、月销量信息;爬取工具:chrome浏览器、pycharmPython库:selenium01网站结构分析打开淘宝首页,输入“手机”进行搜索:点击相关商品详情页,所有信息均可以在详情页找到。02创建Selenium爬
2021-07-13 22:56:41
721
2
原创 Selenium环境搭建
免责声明:本文所记录的技术手段及实现过程,仅作为爬虫技术学习使用,不对任何人完全或部分地依据本文的全部或部分内容从事的任何事情和因其任何作为或不作为造成的后果承担任何责任。Selenium是一个用于Web系统自动化测试的工具,可以模拟浏览器解析动态生成的站点,总体安装过程如下:01安装Chrome浏览器访问chrome官网网站,自行下载安装。02安装Selenium 打开命令行,输入命令,安装Selenium:pip insta..
2021-07-05 19:22:47
213
4
原创 网易新闻爬虫实战笔记[news.163.com]
免责声明:本文所记录的技术手段及实现过程,仅作为爬虫技术学习使用,不对任何人完全或部分地依据本文的全部或部分内容从事的任何事情和因其任何作为或不作为造成的后果承担任何责任。爬取需求:爬取网易新闻【news.163.com】首页展示的相关新闻的标题、时间、来源、内容、链接爬取工具:chrome浏览器、pycharmPython库:scrapy01网站结构分析通过输入【news.163.com】,打开网易新闻网站首页:通过右键检查,打开网页新闻html分析页面
2021-07-01 18:02:19
1051
1
原创 笑话大全爬虫实战笔记[xiaohua.zol.com.cn]
免责声明:本文所记录的技术手段及实现过程,仅作为爬虫技术学习使用,不对任何人完全或部分地依据本文的全部或部分内容从事的任何事情和因其任何作为或不作为造成的后果承担任何责任。爬取需求:通过百度搜索关键字:笑话,搜索结果的第一项就是【xiaohua.zol.com.cn】,锁定从该站上爬取最新的笑话信息,爬取前5页笑话标题、内容等信息;爬取工具:chrome浏览器、pycharmPython库:requests、BeautifulSoup01网站结构分析通..
2021-06-30 17:24:06
212
原创 爬虫框架Scrapy安装
免责声明:本文所记录的技术手段及实现过程,仅作为爬虫技术学习使用,不对任何人完全或部分地依据本文的全部或部分内容从事的任何事情和因其任何作为或不作为造成的后果承担任何责任。Scrapy爬虫框架用Python编写的功能强大,应用范围最广,最流行的爬虫框架,框架提供了大量的爬虫相关的组件,能够方便快捷的完成各网站的爬取。01Scrapy安装打开scrapy官方网站【scrapy.org】,目前最新版本为2.5:按照官方提供的脚本,在命令行执行安装:pip inst..
2021-06-29 17:34:22
221
3
原创 实习僧[shixiseng.com]爬虫实战笔记
免责声明:本文所记录的技术手段及实现过程,仅作为爬虫技术学习使用,不对任何人完全或部分地依据本文的全部或部分内容从事的任何事情和因其任何作为或不作为造成的后果承担任何责任。爬取需求:从网站【www.shixiseng.com】上,任意查询条件下,爬取前5页工作岗位的企业名称、工作岗位、薪资水平、工作地点等信息;爬取工具:chrome浏览器、pycharmPython库:requests、BeautifulSoup01网站结构分析通过输入url【www.shix
2021-06-26 19:24:51
396
1
原创 Python3基本数据类型
Python3总共有6种基本数据类型:Number(数字) String(字符串) List(列表) Tuple(元组) Set(集合) Dictionary(字典)01Number(数字)Python3中支持 int、float、bool、complex(复数),其中complex适用场景不多,暂时可以忽略。int,长整数类型,用于整数数据的运算,日常使用最多的数据类型;float,浮点数,用于小数数据的运算;bool,布尔类型,只有True或False,经
2021-06-25 10:15:30
313
原创 Python3环境搭建
Python环境搭建总体步骤如下:01安装Python访问python官方网站下载安装包,https://www.python.org/downloads/点击下载python 3.9.5双击下载的python安装文件,按照默认设置进行安装02安装Pycharm访问Pycharm官方网站下载安装包,https://www.jetbrains.com/pycharm/download/#section=windowsProfe..
2021-06-25 10:08:17
222
原创 Spring boot全面整合flowable-modeler 6.4.2
前几天整合了flowable-modeler 6.4.2的版本,记录下整个集成过程:1、复制前端源码到自己工程。原有【flowable-ui-modeler-app】下的【resources/static】;2、增加jar依赖。修改pom文件,增加如下内容:<dependency> <groupId>org.flowable</gro...
2019-11-27 10:06:06
2583
1
原创 Canal1.1.4增加canal-admin发送数据至RabbitMQ
Canal1.1.4服务端原生支持mysql数据变化直接发送至kafka、rocketMQ,但是由于我们的项目是使用的RabbitMQ,故需要对原有框架进行扩展。以下记录处理过程:1、下载canal1.1.4源码,详见github:https://github.com/alibaba/canal.git2、分析canaldeployer模块,发现关键引用:<de...
2019-11-14 16:26:51
3471
1
原创 Spring Cloud Consul同一个服务多个实例注册总是被覆盖的问题
由于Eureka宣告进入维护模式,所以抽空研究下Spring Cloud Consul做为服务注册中心。此处不再赘述Consul原理、安装、使用等步骤,具体可以在网络查询,详细教程到处都是。主要描述下问题和解决方式:问题描述新建了一个微服务 service-a,从ip为【192.168.1.10】的机器启动,查看Consul一切正常,不关闭当前服务,再从ip为【192.18.1.20】的机器...
2019-06-05 18:28:23
6137
原创 Centos7关闭IPv6
使用命令查看网卡ip信息ifconfig发现由IPv6等信息,通过修改配置sudo vi /etc/sysctl.conf在末尾增加如下配置:net.ipv6.conf.all.disable_ipv6 = 1重启,再次查看网卡ip信息,发现IPv6的信息没了,关闭成功...
2019-05-08 17:00:00
847
原创 二、Jhipster实战演练-从简单应用开始
一、创建一个小应用从一个简单应用开始,先通过Jhipster创建一个简单的web应用。1、用管理员角色打开cmd命令行,进入到自己需要创建应用的路径(注意:需要在新建的文件夹里面);2、输入【jhipster】命令,开始创建web应用;3、通过向导式的问题一步步完成web应用的创建(下面用红色标出选择); Which type of application would you like to...
2018-07-10 21:12:25
770
原创 一、Jhipster实战演练-安装篇
一 Jhipster是什么?Jhipster是一个自动生成代码的开发平台,通过该平台,可以自动生成、开发、发布基于Spring boot的Angular/React web应用或者微服务应用。基于node.js开发,完全开源免费,项目代码:https://github.com/jhipster/generator-jhipster二 为什么要用Jhipster我个人认为通过使用Jhipster有以...
2018-07-09 21:11:02
402
原创 提升数据库纵表检索效率
在系统应用中,经常碰到不确定的属性字段等应用场景。常规的作法是直接将属性字段设计成纵表,可以不限制属性的数量,来满足业务需求,比如: 那么,存放的数据将如下所示: 通过该数据模型的设计,可以正常解决不确定属性时数据的存储及检索,能够满足业务需求。但是,在实际的使用过程中,如果数据量庞大,该方式需要group by的方式进行属性数据匹配,检索效率相当低下。
2017-04-06 11:09:54
1799
1
原创 互联网单点登录集成方案
为了迎合公司互联网化经营,业务部门均纷纷上马了互联网的项目,部门应用之间各自为政,无法形成公司整体品牌效应,以及影响用户体验,故,有了以下的单点登录集成方案。概述整合集成公司各个业务部门的应用,支持通过多终端全渠道单点登录功能;总体方案1、用户访问业务系统,通过业务系统集成的拦截器跳转到登录服务器,进行系统的登录、登出操作;2、登录服务器
2017-02-10 14:38:58
5228
原创 配置管理系统方案
随着IT技术的发展,系统使用的技术越来越多,相关的配置文件也越来越庞大,不同的环境需要对应不同的配置项,增加了系统大包发布的难度,还容易出错,为了解决这个问题,可以考虑建设统一的配置管理系统来托管配置文件;一般配置管理系统分为:配置管理中心、版本注册中心、安全管理中心、开放平台、配置管理客户端等这几部分:配置管理中心:配置管理系统的控制台,所有的功能均在配置管理中心进行操作;版
2017-01-16 16:53:00
1761
原创 通用数据缓存设计方案
随着redis等内存数据库的流行,大多数应用及系统均开始采用redis集群作为系统的缓存方案,用来减少数据库的压力,增加应用并发及响应速度。前端页面的缓存暂不做探讨,主要是针对后端服务的数据缓存。数据缓存的分类及特点常规涉及的数据缓存大致可以从以下三个方面进行分类:生命周期、时效性、复杂度;数据缓存根据生命周期分类主要分为:长期、中期、短期三类,主要作用及特
2016-11-24 22:44:35
4639
原创 企业级用户管理系统数据融合方案
随着互联网的发展,不少传统企业也纷纷建设起了面向互联网用户的平台或者应用,在这一过程中,不少企业面临互联网用户数据和企业传统内部员工、渠道、门店等用户数据融合的问题。早在企业级系统或平台的建设时期,企业内部系统和平台的建设是相对封闭的内网环境,安全性要求较高,一般都采用了LDAP存储内部用户的建设方案。到了互联网时代,建设面向互联网应用或平台,需要考虑大海量用户数据以及高并发的
2016-11-23 22:20:06
2064
原创 多租户用户管理常用业务场景
在多租户用户管理系统中,常见的业务场景有以下几种:用户注册用户通过填写手机号码等信息,进行注册操作;该场景这重验证用户手机号码的有效性,一般通过短信验证码进行验证;租户注册用户通过填写租户的相关信息,注册租户,该用户默认为租户的超级管理员。该场景注重收集租户的相关信息;用户登录通过验证用户的手机和密码等方式,进
2016-11-23 21:50:34
14554
原创 JAVA高级面试总结-JVM篇
Sun HotSpot VM,是JDK和Open JDK中自带的虚拟机,也是目前使用范围最广的Java虚拟机。JVM内存分布程序计数器:是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。程序中的分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器完成。由于多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,故该区域为线程私有的内存。虚拟机
2016-11-23 16:09:52
33015
原创 JAVA高级面试总结-基础篇
参考了网上的面试题,整理了一份面试题的资料。String,StringBuffer, StringBuilder 的区别是什么?String为什么是不可变的?String是字符串常量,后两者是字符串变量。其中,StringBuffer是线程安全的,而StringBuilder是非线程安全的,线程安全会带来额外的开销,所以StringBuilde
2016-11-23 09:58:33
8975
4
原创 我的设计模式-外观(Facade)
外观模式是解决类与类之间的依赖关系的,很多应用框架将类与类的依赖关系配置在XML文件中,外观模式是使用一个外观类,将类与类的依赖关系定义在外观类中,降低类与类之间的耦合。如果不使用外观类,那么类123之间就可能存在相互持有实例,造成严重的依赖关系。通过一个外观类,持有所有类123的对象实例,并在外观类中封装方法调用类123实例的方法,实现了类的解耦,后续调整只需要调整外观类中类
2016-11-22 22:49:57
416
原创 我的设计模式-装饰(Decorator)、代理(Proxy)
经常会有一种场景,需要临时增加一段业务逻辑,该段业务逻辑使用一段时间后需要失效,比如:按照时间段促销等等,这种就可以使用装饰模式进行实现。装饰模式是动态的给某对象增加一些新的功能,要求装饰类实现同一接口,并且拥有被装饰类的对象实例。实现类图如下:通过新增装饰类实现原有接口,在实现的方法内新增装饰内容,再调用原有的方法来实现扩展原有实现类的功能。通过实现接口,可以实现装饰类的动态
2016-11-22 22:25:07
345
原创 我的设计模式-适配器(Adapter)
适配器是用来解决原来的目标接口和现有的方法没有办法一起使用的问题,通过适配器模式,将现有方法适配至原有接口模式进行使用。这种情况其实在实际应用中存在很多问题,并不是一种设计模式就可以解决的问题,所以适配器模式实际场景使用并不广泛,不过可以了解下实现思路。从上图不难看出,原有接口和现有实现类无法一起使用,通过适配类实现原有接口,以及注入的现有实现类的实例对象,实现了将现有方法适配
2016-11-22 21:13:22
264
原创 我的设计模式-单例(Singleton)
单例模式是最常见的设计模式,比较简单,就是保证在JVM内,一个对象只有一个实例存在。比如:spring bean默认模式就是单例。一般按照对象实例创建的时机,单例又分为懒汉模式和饿汉模式:懒汉模式在类加载的时候不创建对象实例,在实际使用中判断对象实例是否存在,如果存在则直接返回;如果不存在,则new出对象实例再返回;该模式有3个关键点:1、构造函数私有;2、静态获取
2016-11-22 20:40:59
271
原创 我的设计模式-抽象工厂(Abstract Factory)
抽象工厂主要是在工厂模式的基础上,将对象实例生成工厂进行了抽象,增加了对象实例生成工厂的拓展性。工厂模式可以参看:点击打开链接以下举例说明抽象工厂模式:可能有多种打印机,但都有打印方法;将原有工厂模式的打印机工厂类进行封装,通过实现统一的接口来实现不同的打印机实例的建造工厂,增加了打印机工厂的扩展性,使程序更加灵活。
2016-11-22 17:48:49
286
原创 我的设计模式-工厂(Factory Method)
工厂模式主要解决对象实例的创建问题,就是建造一个工厂类,来负责实现了同一接口的所有类的实例的创建。这种模式比较简单,下面举打印机的例子进行说明:使用方通过打印机工厂类来获取具体打印机的实例,通过这种方式,将使用方和具体的打印机实现类进行了解耦,后续调整修改都非常方便,且对使用方基本没有影响;
2016-11-22 17:16:51
306
原创 Apache的windows版本启动报错自行分析方法
最下下载了Apache2.4的windows版本,在启动过程中出现了一些错误,但错误信息非常不友好,需要通过命令行启动进行分析,记录过程如下:在windows中启动Apache失败,报错信息:The requested operation has failed!该错误信息无法分析出具体的错误原因,需要通过命令行启动,在控制台会有具体的错误信息;1、CMD切换到A
2016-08-16 14:15:08
1286
原创 CentOS安装Hadoop2.7.2详细过程
1、安装情况说明JDK版本:1.8Hadoop版本:2.7.2CentOS版本:7.1主机如下:171.21.35.5 name1.c4a1该主机准备作为Namenode171.21.35.6 data1.c4a2171.21.35.7 data2.c4a3171.21.35.8 data3.c4a42、配置HOSTvi /e
2016-08-04 19:43:50
637
原创 CentOS安装JDK1.8
安装JDK1.8很简单,先下载Oracle提供的rpm包,然后删除掉本机的OpenJdk,最后安装下载的jdk1.8的rpm包即可。1、jdk安装包下载到Oracle官网上去下载对应的rpm安装包,先接受协议,再下载对应的rpm包;或者直接后台下载:wget http://download.oracle.com/otn-pub/java/jdk/8u102-b1
2016-08-04 10:41:07
3017
原创 Redis3.2.1配置文件redis.conf详解
以目前redis的最新版本为例,具体的安装过程见:http://blog.csdn.net/zhangjin530/article/details/52062394Redis在服务启动的时候选择加载配置文件,例如:./redis-server /path/redis.conf1、daemonize yes默认redis不是以后台进程的方式启动,如果需要在后台运行,需
2016-07-29 16:39:14
2661
原创 CentOS安装Redis3.2.1
Redis是一个完全开源免费的高性能key、value数据库,安装使用都非常简单。1、下载redis3.2.1的安装包;wget http://download.redis.io/releases/redis-3.2.1.tar.gz2、将下载的安装包解压缩;tar -xvf redis-3.2.1.tar.gz3、进入到redis文件夹进行编译、安装;makem
2016-07-29 10:41:52
558
原创 网络安全技能图谱
基础必备#### HTTP抓包与调试Firefox插件Firebug(抓包与各种调试)Tamper Data(拦截修改)Live Http Header(重放功能)Hackbar(编码解码/POST提交)Modify Headers(修改头部)Fiddler浏览器代理神器拦截请求或响应抓包重放模拟请求编码解码##### 第三方扩展##### Watcher Web前端安全
2016-07-25 13:48:55
3037
原创 大数据技能图谱
大数据处理框架#### SparkRDDSpark SQLSpark StreamingMLLibHadoopHDFS(分布式文件系统)Mapreduce(计算框架)Yarn(资源管理平台)Pig(piglatin 语句到 mapreduce 的映射)Hive(数据仓库,提供 SQL)Mahout(机器学习算法的 mapreduce 实现库)Kafka#### Storm
2016-07-25 13:45:46
484
原创 CentOS SSH免密码登录详解
在网上看到很多关于SSH免密登录的文章,但还是有部分同学在具体操作过程中出现问题,现在按照实际步骤一步一步进行说明:前置说明:假设现有三台机器,机器A、B、C,其中机器A需要SSH免密登录到其他机器;1、首先修改SSH配置文件,机器A、B、C均需要进行修改;首先修改机器A:sudo vi /etc/ssh/sshd_config将以下三个项目之前的注释符
2016-07-25 13:32:13
1252
原创 CentOS7修改yum阿里源
CentOS7安装后第一件事就是更新yum源(国外的源比较慢),此处以更新为阿里源为例(阿里源为目前用的比较好的国内源之一,也可以选择163):sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup#备份系统自带的源sudo wget -O /etc/yum.r
2016-07-25 11:13:04
543
Kubernetes实战(套装共2册)PDF
2018-08-17
Odoo.11.Development.Cookbook.2nd.Edition pdf
2018-08-17
Odoo-11-Development-Essentials
2018-08-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人