自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Bottle's Blog

出来混,迟早是要还的

  • 博客(179)
  • 资源 (18)
  • 收藏
  • 关注

原创 【实现一套爬虫数据抓取平台】[1-1-01] 系统拓扑结构

在真正开始介绍系统的各个组件之前,我们先来了解一下这套爬虫系统的整体拓扑结构,从物理层面对整套系统有一个感知。一、网络拓扑图从上面图片可以看出,整套系统被规划为两套网络环境,一套公网环境,一套内网环境。实际生产当中,二、公网环境公网环境主要用于代理相关服务(代理池维护、代理调度等)。另外,一部分报告文件我们也会放到阿里云的 OSS 上,便于下载。三、内网环境内网环境是我们整套系统的核心运行环境,各类服务、组件、中间件、控制器等等内容都在这套内网环境中运行。实际上,我们的这套内网环境并不在一

2021-02-18 14:21:17 24105 1

原创 【实现一套爬虫数据抓取平台】[0-0] 序篇

前言爬虫搞了一年多了,不说做的多好,但基本上坑趟了一大堆,准备写一套文章,把这一年经验和教训跟大家分享一下。废话少说,咱们正式开始。纲领本套文章会按照以下顺序来逐步来整理,感兴趣的同学可以自行查看对应的篇章。一、调度平台1.1、整体架构1.2、调度服务1.3、任务执行服务1.4、数据清洗服务1.5、监控服务1.6、报警服务二、爬虫相关2.1、爬虫实现2.2、Web 站点如何抓取2.3、App 如何抓取2.4、小程序如何抓取2.5、代理相关2.6、Cookie 相关2.7

2021-02-08 11:07:49 26704 2

原创 【解决方法】Pymongo insert 卡住

背景先说一下标题,当我不知道问题的具体原因的时候,上面的标题就是我在搜索引擎中输入的内容。同样的,我还尝试过以下几种搜索组合:Pymongo insert hangsPymongo insert stopPymongo insert no returnMongoDB insert hangsMongoDB insert stopMongoDB insert no return从上面几个搜索的关键词,大家也能看出来问题的基本背景,就是使用 Pymongo 执行 insert,但是卡住了。

2020-12-21 10:56:56 36790

原创 Python 如何获取 url 中的域名

分析如题,咋整。先简单分析一下,这个问题的解决方法大致分两种。第一种,自己手撸。第二种,选择成熟的轮子,毕竟我们高贵的双手还要用来搬砖,没有时间用来造重复的轮子。开搞一、手写咱们先说说手撸,没啥特殊的,就是字符串截取,稍微高级一点可以把正则用上。比如下面就是一个小例子:def get_domain_by_re(u): d = re.search(r"(?<=http[s]://)[.\w-]*(:\d{,8})?((?=/)|(?!/))", u).group() r

2020-10-28 17:03:46 51127

原创 CentOS 如何查看文件或者文件夹大小

开箱即用先上简单粗暴版,拿走直接用。1、查看当前目录下各个文件夹的大小[root@Crawlab_01 crawlab]# du -h --max-depth=1 ${pwd}740M ./5eb10df97d764300175f3653712K ./5eb395d7687c4f0015d56f28392M ./5ee8343544bacf0015329bb24.4M ./5ef06f34286642001755822b1.1G ./5ef06b16286642001755822839M

2020-10-16 10:12:42 49502

原创 Python 如何 ping

背景最近需要监测一个服务器的运行状态。因为服务器部署在两地,网络抖动对业务的影响很大,所以要在网络抖动情况严重时做一些警报。实现方法有很多种,最终选择了使用 Python 来实现这样的功能。实现Python 实现 ping 有几种方法:1、自己实现 ping2、调用系统 ping3、使用 Python 模块自己实现 pingping 的原理就是发送一份 ICMP 回显请求报文给目标主机,并等待目标主机返回ICMP回显应答。如果想要自己写,可以自己控制发报文,这里推荐一篇博客大家可以自行

2020-10-10 19:38:10 72110 3

原创 Python requests timeout 分析

背景最近在搞爬虫,很多小组件里面都使用了 Python 的 requests 库,很好用,很强大。但最近发现很多任务总是莫名其妙的卡住,不报错,但是就是不继续执行。排查了一圈,最后把问题锁定在 requests 的 timeout 机制上。注:本文讨论的是 Python 的第三方模块 requests,并不是 Python 内建模块 urllib 中的 request 模块,请注意区分。如何设置超时时间requests 设置超时时间有两种方式。一种是设置单一值作为 timeout,如下所示

2020-09-26 12:58:28 49892 1

原创 【解决方法】PHP Composer - Fatal error: Allowed memory size of xxx bytes exhausted

问题描述composer 安装扩展,之前就经常出现失败的情况,也没在意,重新跑就完了。这次报了上面标题的错误,具体内容如下:$ php composer.phar install Loading composer repositories with package informationUpdating dependencies (including require-dev)Fatal error: Allowed memory size of 161

2020-09-02 10:24:59 50905

原创 CentOS 7 如何为 PHP 5.6 安装 MSSQL 扩展

背景前两天写了一篇文章 OSX MAMP 如何为 PHP 5.6 安装 MSSQL 扩展,讲的是自己的个人电脑,也就是开发环境如何为 PHP 5.6 安装 MSSQL 扩展,现在要上生产了,继续讲讲怎么给 CentOS7 安装 PHP - MSSQL 扩展。运行环境操作系统CentOS Linux release 7.8.2003 (Core)集成环境宝塔PHP 5.6.40步骤和之前一样,我们先来整理一下整体的步骤:1、安装 freetds2、安装 mssql.so 扩展(p

2020-07-09 22:08:07 49265 2

原创 【解决方法】phpize 编译安装 php 扩展时出现Cannot find autoconf

背景已知,编译安装 php 扩展的时候,需要先执行 phpize 来 生成 configure 文件。但是,最近在安装扩展的时候出现了如下错误:$ /path/to/php/php5.6.40/bin/phpizeConfiguring for:PHP Api Version: 20131106Zend Module Api No: 20131226Zend Extension Api No: 220131226Cannot find autoconf. Ple

2020-07-06 20:48:46 48277

原创 OSX MAMP 如何为 PHP 5.6 安装 MSSQL 扩展

背景如标题所说,要给 OSX 上运行的 MAMP 安装基于 PHP 5.6 的 MSSQL 扩展,用于连接 MSSQL(即 MsSqlserver)。运行环境操作系统OSX - 10.13.4软件环境MAMP - 5.6PHP - 5.6.40步骤整体步骤1、安装 freetds2、安装 mssql.so 扩展(php 的 mssql 扩展依赖于 freetds)详细步骤废话少说,直接开始。1、安装 freetds命令行执行如下指令:brew install free

2020-07-03 16:33:24 48227

原创 【Cocos Creator 实战】04 - 如何给拼图加上吸附效果

继续继续。上一篇地址:【Cocos Creator 实战】03 - 如何「拿起」拼图游戏的每块图片概览主要内容来看看今天要做的内容:Cocos Creator 中坐标系的基本知识如何给拼图游戏加上吸附效果项目资源项目地址:https://github.com/BottleMan/Bottle-s-Jigsaw/tree/04_adsorption演示地址:点击前往推荐...

2020-07-01 16:22:45 49292 1

原创 【解决方法】windows 运行 appium 提示 OSError: [WinError 10049] 在其上下文中,该请求的地址无效

背景我一般运行 appium 都是在 osx 或者 linux 上面,最近在教几个同事使用 appium 做些自动化(爬虫)的事,有几个人使用的是 windows,配置环境搞了很久,服务跑起来了之后,用代码运行,又报了上面标题的错误。问题分析首先判断,这是一个 python 的错误,也就是说,不是 appium 本身的问题,那就从两点开始分析,要么是系统环境问题,要么是哪里的配置问题。先从配置的问题开始下手,毕竟新手一般都容易犯一些低级错误。但是拿着同事的代码在另一位同事的机器(osx)上跑,怎么都

2020-07-01 16:21:45 56706 2

原创 【解决方法】The SCRAM_SHA_1 authentication mechanism requires libmongoc built with ENABLE_SSL

背景手动安装的 PHP mongodb 扩展,但是连接 MongoDB 报标题的错误:The SCRAM_SHA_1 authentication mechanism requires libmongoc built with ENABLE_SSL问题原因MongoDB 扩展依赖 SSL,所以,安装 SSL 就可以了。解决方法依次执行以下指令。sudo apt-get instal...

2020-05-07 21:58:15 51763

原创 【解决方法】Appium 报错 Original error: chrome not reachable

背景使用 Appium 做一些东西。运行起来之后报错:An unknown server-side error occurred while processing the command. Original error: chrome not reachable问题分析我的控制脚本应该是没问题的,在自己的电脑上都跑的好好的,所以,一定是环境的问题。从以下几处入手:1、Chrome ...

2020-04-24 17:33:03 51156

原创 【解决方法】微信小程序 module "xxx/xxx.js" is not defined(开发工具正常,真机预览报错)

背景小程序开发,写了一个公共模块,方便其他页面使用。开发工具中使用一切正常,但是用真机预览的时候就会报错「module “xxx/xxx.js” is not defined」。查了一圈,基本确定了是小程序 js 加载顺序的问题,那解决思路自然就有了。解决方法将引用的代码放到页面的 onLoad 方法或者 app.js 的 onLaunch 方法中执行。比如我这里就是放到了 app.j...

2020-04-06 20:42:26 107098 9

原创 【解决方法】error: more than one device/emulator

背景搞点 Android 小工具,开发过程中需要 adb 调试。但是执行某条 adb 指令之后就报标题的错:error: more than one device/emulator原因分析很简单,报错说的很清楚,有多个设备同时连接了电脑。解决方法解决方法也很简单,执行 adb 指令的时候,指定执行的设备,就OK了。比如:adb -s xxxxxx shell ps 21190...

2020-03-08 13:06:07 95478 3

原创 【解决方法】OSX-Docker push 报错「server gave HTTP response to HTTPS client」

文章目录背景原理方法一方法二背景前一段时间写了一篇文章:【解决方法】Docker push 报错「server gave HTTP response to HTTPS client」,乍看之下和本篇标题一样,仔细一看,你能找到区别的。对,这次是针对 osx,也就是 mac 系统来做的。这次就不分析了,直接上解决方法。原理原理还是一样,就是将我们将要push到的地址,添加到 Insecu...

2019-12-18 10:08:44 51400 1

原创 CentOS7 如何修改主机名

只介绍最简单的一种。通过 hsotnamectl 指令修改。先查看以下本机当前主机名:执行 hostnamectl:[root@localhost ~]# hostnamectl Static hostname: localhost.localdomain Icon name: computer-vm Chassis: vm ...

2019-11-29 09:22:13 50212

原创 【解决方法】Docker push 报错「server gave HTTP response to HTTPS client」

背景自建 Docker 本地私有仓库。准备 push 到仓库,报标题错误。少啰嗦,直接上解决方案。解决方案如果你 docker push 的时候报错内容和我上面一样,那是因为客户端push的时候采用https协议,而registry未使用https导致的。修改 /etc/docker/daemon.json 文件(如果没有就创建新的),并写入如下内容:{ "insecure-re...

2019-11-27 11:04:28 61635

原创 【解决方法】CentOS7 报错 ModuleNotFoundError: No module named 'gi'

背景新装的 CentOS7.6 环境,准备做一个测试机,因为是内网做着玩的,装完第一件事就是把防火墙关了,然后安装了其他的开发环境。问题今天想打开防火墙测试一个功能的时候,发现报了这样一个错:[root@localhost ~]# firewall-cmd --stateTraceback (most recent call last): File "/usr/bin/firewal...

2019-11-25 17:56:44 56962

原创 Crontab 语法整理

Crontab 语法一、基本语法minute hour day-of-month month-of-year day-of-week commands 二、合法值00-59 00-23 01-31 01-12 0-6 (0 is sunday) 三、特殊符号* 代表所有的取值范围内的数字/ 代表每的意思, /5 表示每5个单位- 代表从某个数字到某个数字, 分开几个离散的数...

2019-11-12 17:01:16 51410

原创 【Cocos Creator 实战】08 - 如何让拼图游戏暂停/继续

文章目录概览本期实现效果项目资源开搞需求分析项目结构场景修改按钮点击事件按钮点击动画核心代码总结知识点下一步继续丰富游戏内容哈。上一篇地址:【Cocos Creator 实战】07 - 如何让拼图回到原位(优化自动吸附规则)概览本期实现效果先看看我们今天想要实现的效果吧。项目资源项目地址:https://github.com/BottleMan/Bottle-s-Jigsaw/t...

2019-10-17 10:15:28 51539 1

原创 【Cocos Creator 实战】07 - 如何让拼图回到原位(优化自动吸附规则)

文章目录概览主要内容项目资源开搞原理核心代码总结知识点下一步继续继续。上一篇地址:【Cocos Creator 实战】06 - 如何给拼图游戏添加计时器概览主要内容在上一篇结尾的时候,我们引用了以为同学的话:在拼图游戏中,如果几块拼图都重合在一个锚点,感觉会降低游戏体验。可是如何做到移动图片至已经存在图片的锚点时,将后来的图片弹到其他区域(也就是说有图片的锚点不能吸附新的图片)。这种...

2019-10-14 16:29:05 51303 2

原创 【Cocos Creator 实战】06 - 如何给拼图游戏添加计时器

文章目录概览主要内容项目资源开搞项目结构字体如何控制节点的显示&隐藏如何设置节点的相对位置 & 自动大小 & 对齐策略如何防止节点的点击穿透如何倒计时总结知识点下一步继续继续。上一篇地址:【Cocos Creator 实战】05 - 如何判断拼图完成(胜利)概览主要内容来看看今天要做的内容:如何给拼图游戏加上计时器(timer)如何控制节点显示/隐藏Wid...

2019-10-11 11:26:20 51432

原创 【Cocos Creator 实战】05 - 如何判断拼图完成(胜利)

文章目录概览主要内容项目资源开搞胜利规则核心代码总结知识点下一步继续继续。上一篇地址:【Cocos Creator 实战】04 - 如何给拼图加上吸附效果概览主要内容来看看今天要做的内容:如何判断拼图游戏已经结束(胜利)来看看将要实现的效果:项目资源项目地址:https://github.com/BottleMan/Bottle-s-Jigsaw/tree/05_chec...

2019-09-20 09:56:48 51817 2

原创 【Cocos Creator 实战】03 - 如何「拿起」拼图游戏的每块图片

文章目录概览主要内容项目资源开搞什么是 zIndex关于 zIndex 的注意事项需求分析核心代码效果总结知识点下一步好了,书接上回,继续给我们的拼图游戏添枝加叶。上一篇地址:【Cocos Creator 实战】02 - 给拼图游戏加上音乐和音效概览主要内容来看看今天要做的内容:Cocos Creator 中如何设置节点的顺序(zIndex)什么是 zIndex,别着急,一会就说...

2019-09-16 16:24:48 52351

原创 【Cocos Creator 实战】02 - 给拼图游戏加上音乐和音效

文章目录概览开搞使用 AudioSource 播放(静态)使用 AudioEngine 播放(静态 + 动态)静态播放动态播放AudioSource 和 AudioEngine 的区别设置回调好了,书接上回,继续完善我们的拼图游戏。上一篇地址:https://blog.csdn.net/zhyl8157121/article/details/100727032概览来看看今天要做的内容:...

2019-09-16 11:02:01 53658

原创 【Cocos Creator 实战】01 - 如何做一款简单的拼图游戏

文章目录前言什么是 Cocos Creator本篇文章的目的开发环境项目资源开搞思路项目概览核心代码效果总结知识点不足前言什么是 Cocos Creator以下内容引自 Cocos Creator 官网:Cocos Creator 是一个完整的游戏开发解决方案,包括了 cocos2d-x 引擎的 JavaScript 实现(不需要学习一个新的引擎),以及能让你更快速开发游戏所需要的各种图...

2019-09-11 11:25:18 54971

原创 如何给你的网站套上Cloudflare(以阿里云为例)

文章目录Cloudflare 是什么准备工作开搞Cloudflare 设置阿里云域名设置等待设置 DNS 解析记录其他问题看下效果Cloudflare 是什么以下内容引自维基百科:Cloudflare是一間總部位於舊金山的美國跨國IT企業,以向客戶提供基於反向代理的內容傳遞網路(Content Delivery Network, CDN)及分佈式域名解析服務(Distributed Dom...

2019-09-05 09:39:46 86790 10

原创 如何刷新本机DNS缓存(Win+Linux+OSX)

文章目录WinOSXOS X 12 (Sierra) and laterOS X 11 (El Capitan) and OS X 12 (Sierra)OS X 10.10 (Yosemite)Versions 10.10.4+Versions 10.10.1, 10.10.2, 10.10.3OS X 10.9 (Mavericks)OS X 10.7 (Lion) and 10.8 (Mou...

2019-09-05 09:24:56 52762

原创 CSS 实现文字头像(圆角头像文字内容)

先上效果图。关键css:.avatar-container { height: 1.5rem; width: 1.5rem; display: inline-block; background: #aaaaaa; text-align: center; border-radius: 0.75rem;}.avatar-content { ...

2019-08-28 16:24:01 53573 1

原创 【解决方法】因为 'PRIMARY' 文件组已满。请删除不需要的文件、删除文件组中的对象、将其他文件添加到文件组或为文件组中的现有文件启用自动增长,以便增加可用磁盘空间

文章目录平台问题描述解决问题1、查看数据库数据文件存放路径2、查看存放路径的盘是否已满3、更改数据库设置平台sqlserver 2012问题描述正常运行的生产系统,今天下午突然发现不能使用的情况。看日志,发现以下描述:System.Data.Entity.Infrastructure.DbUpdateException: An error occurred while updati...

2019-08-27 16:05:09 78202 3

原创 com.google.zxing.NotFoundException 问题分析

这仅仅是一篇问题分析哈,提供理解这个问题的思路,并不是解决这个问题的方法。背景先说背景,项目中需要一个扫描二维码的功能,网上找了一个比较火的 BGAQRCode-Android,用了一圈感觉还不错。但是在扫描页面,logcat 总是报 W/System.err: com.google.zxing.NotFoundException,类似下图:结论再说结论,对分析不感兴趣的可以看了结论就...

2019-08-02 09:18:09 59556 2

原创 企业微信小程序开发流程

文章目录背景问题分析处理流程1、小程序基础功能开发,提交审核2、企业微信关联小程序3、获取关联小程序的 Secret,设置可见范围4、修改小程序4.1、判断运行环境4.2、权限校验参考资料背景为其他公司开发一个小程序,这个小程序要只能在企业微信里面访问,不能通过普通微信访问。企业微信里只有授权的用户可以使用该小程序。之所以要整理这样一个流程,是因为微信那边的文档太分散了,乱七八糟的,我也是...

2019-07-31 15:01:17 73059 11

原创 Word 转 PDF 技术方案评测

文章目录背景最终选择评测标准一、运行环境二、依赖 Office三、转换效果评测结果选择理由总结背景最近项目有个需求,要将用户上传的 word 文件转换成 pdf。最开始是想用 PHP 的一些库来做,后来发现效果并不好。然后找了一些linux(CentOS)上能使用的工具来进行转换,上线之后发现一些特殊类型的文档并不能很好的处理,然后就继续选择。最终选择先说结论,如果不对其他工具感兴趣,...

2019-07-31 13:55:20 50367

原创 JavaScript 时间操作方法扩展

JavaScript 时间操作方法扩展

2017-03-27 10:55:21 50885

原创 VMWare Centos7 无法连接网络解决方法

VMWare Centos7 无法连接网络解决方法VMWare 的版本有些老了,所以可能无法识别 CentOS7 的网络设置。我觉得我上面那句话就是瞎说的。先说问题吧正常安装的 Centos7,进入系统之后无法连接网络使用 ifconfig 查看,没有看到 eth0,或者其他设备信息重装 Centos7,安装的过程中准备启用设备,但是却显示无法发现设备,具体如下图: 这就很尴尬了,没法直接选择

2017-01-06 13:04:55 55484

原创 CentOS 升级 openssl

CentOS 升级 openssl1. 安装依赖环境:yum install pcre-devel zlib unzip git2. 查看当前 OpenSSL 版本openssl version OpenSSL 1.0.1e-fips 11 Feb 20133. 下载 OpenSSL 的最新版去官网 https://www.openssl.org/source/ 选择最新的就可以。我这边现在是

2016-12-22 19:20:51 53857

原创 PHP扩展:zend_parse_parameters() 获取字符串的问题

背景不多介绍了,能查到这个问题的基本都知道是怎么回事了。不说获取其他类型参数的问题,网上一查一大堆。这里只说一下获取字符串。下面是获取单个字符串变量的方法:PHP_FUNCTION(confirm_bitch_compiled){ char *arg = NULL; int arg_len, len; char *strg; if (zend_parse_parame

2016-11-04 11:17:52 52510

sc_unicode.txt

sc_unicode.txt

2021-08-26

php-5.6.40.tar.gz.zip

博客 https://blog.csdn.net/zhyl8157121/article/details/107237604 引用的资源。 php-5.6.40 的源码,打包成了一个 zip 压缩文件,下载之后要解压两次才能使用。国内直接从官网下载可能会比较慢,这里做一个备份,方便有需要的同学。

2020-07-09

freetds-patched.tar.gz

博客 https://blog.csdn.net/zhyl8157121/article/details/107237604 引用的资源。freetds-patched.tar.gz 源码,国内直接从官网下载可能会比较慢,这里做一个备份,方便有需要的同学。

2020-07-09

js 二维码生成库

把字符串生成二维码,并以Base64 URL形式输出。 文章 http://blog.csdn.net/zhyl8157121/article/details/51726011 的引用资源。

2016-06-21

Notepad++ 自定义 httpd.conf 文件语法高亮的配置文件

Notepad++ 自定义 httpd.conf 文件语法高亮的配置文件 使用方法: http://blog.csdn.net/zhyl8157121/article/details/51320819

2016-05-05

Microsoft Visual C++ Compiler for Python 2.7(part 2)

用pip安装scrapy的时候出现的问题。但是微软网站又抽风了,半天下载不下来。 放在这里做个备份。 由于CSDN的上传限制,把文件拆分了,这里是第二部分。

2016-02-01

Microsoft Visual C++ Compiler for Python 2.7(part 1)

用pip安装scrapy的时候出现的问题。但是微软网站又抽风了,半天下载不下来。 放在这里做个备份。 由于CSDN的上传限制,把文件拆分了,这里是第一部分。

2016-02-01

Android通过webservice连接Sqlserver实例

Android连接SQLServer详细教程(数据库+服务器+客户端) 博客http://blog.csdn.net/zhyl8157121/article/details/8169172中的资源

2012-12-02

android连接数据库实例

android连接数据库的实例,包括webservice端的代码和数据库的格式和代码,希望对需要的人有帮助

2012-08-16

HTTP返回状态码大全

包含所有HTTP的返回码及其含义,有需要的可以直接查找

2012-08-14

Sqlite语法

sqlite语法规则, 使用方法,还是比较全的,可以拿来参考一下

2012-08-14

PndMergeHelper

开发游戏的时候常用的工具,可以很方便的讲几张png图片合并成一张,使用很简单

2012-08-14

老鼠走迷宫

算法课做的,经典问题老鼠走迷宫,需要的同学可以参考

2012-08-14

C语言 冰鞋租用管理系统

大一暑期小学期做的,有需要的同学可以参考

2012-08-14

冰鞋租用管理系统,c语言版

大一小学期做的,虽然不是很好,但是很基础,东西也都很简单,新手看看吧

2012-07-01

Google C++规范 中文版

google C++规范 中文版,很详细,新手或者代码风格比较差的可以看一看

2012-07-01

ACM算法模板

ACM的算法模板,自用的,以前从网上淘的,感觉还不错

2012-05-26

djvu格式电子书的阅读器

可以看djvu格式电子书的阅读器,虽然这种格式的书很少见,不过,偶尔遇到了还是挺麻烦的

2011-08-06

空空如也

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

TA关注的人

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