自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

张志鹏的博客

专注Python/爬虫. 能搭web,会调js; 能抓包,会反编译

  • 博客(241)
  • 论坛 (1)
  • 收藏
  • 关注

原创 [原创] Docker - wvdial 拨号联通4G 搭建代理服务, 出口 IP 随机

接上篇, 树莓派使用多个联通4G上网卡> - http://blog.csdn.net/u012731379/article/details/78732774 本篇使用Docker 拨号联通4G, 并且搭建代理服务, 并且出口 IP 随机化. 解决多网卡拨号后需要配置路由表的问题.在 docker 中共享 device$ docker run -t -i --device=/dev/

2019-12-23 11:57:00 2802 5

原创 [原创]使用 swagger 定义 API

使用 Swagger 定义APIStart Swagger Editordocker run -d -p 8080:8080 swaggerapi/swagger-editorOpen Swagger Editor in browser http://localhost:8080/https://swagger.io/tools/swagger-editor/download/...

2019-07-09 19:21:27 317

原创 [原创] k8s 部署文档

k8s note, support all cni plugin.master firstinstall dockercurl -fsSL https://get.docker.com -o get-docker.shbash get-docker.shsystemctl enable docker && systemctl start dockerdocker ps...

2019-06-17 11:37:01 2623

原创 [原创]容器中使用 hostname 访问外部机器

容器中使用 hostname 访问外部服务AWS 上有一个集群服务, VPS 之间使用 ip-xx-xx-xx-xx 是可以直接访问的.现在有个需求, 要在某几台机器部署 docker, 在容器内访问集群内的服务. 并且使用 hostname 实现.# 创建 Dockerfilecat > Dockerfile << EOFFROM alpineEOF# 创建 d...

2019-05-21 15:52:24 1438

原创 [原创] python logging 将 debug info 级别输出到 stdout, error warning critical 输出到 stderr

将 logging debug/info 级别的日志输出到 stdout, 将 warning, error, critical 输出到 stderr.结果示例. 代码已经提交到 Stack Overflow 上. 详见: https://stackoverflow.com/a/55494220/3992791# 只输出 print/logging.debug/logging.info 内容...

2019-04-11 18:42:14 1002

原创 [原创] gitlab commit 集成 redmine issue

gitlab 集成 redmine issueweb 容器我使用的是 nginxnginx 配置目录 /etc/nginx/nginx.confnginx html 文件目录 /var/www/cgi/更改 nginx/redmine 进程运行用户启动 nginx 后, redmine 不会有任何进程. 当访问 redmine 后, 后台会 fork 一个子进程.ps aux|gre...

2019-01-29 14:20:28 1116

原创 [原创] python convert dict to object like javascript use munch(bunch)

python convert dict to object like javascriptinstallpip install munch# (munch clone from bunch, but bunch has not update long time)examplefrom munch import munchifyfrom munch import unmunchify...

2018-12-19 18:21:10 151

原创 [原创] python monitor log end content send to html use websocket

Use Python monitor log file end content, like tail -f, and send to html use websocket.server.py# server.pyimport tornado.webimport tornado.httpserverimport tornado.optionsfrom tornado.options ...

2018-09-13 17:28:15 163

原创 [原创] 调研 python json 提取工具

为便捷配置信息提取规则, 调研 json 格式的数据提取方案.jsonselect css selector 实现$ pip install jsonselect &gt;&gt;&gt; import jsonselect as j&gt;&gt;&gt; &gt;&gt;&gt; data = {'name':'zz', 'books':[{'name':'x','pr...

2018-08-31 18:23:05 842

原创 [原创] layer.js 实现自适应置顶消息流

使用 layer.js 实现只适应置顶消息流, 官网只提供了 API 可以指定, 但只能显示一个, 第二个会删除前一个消息框. 通过查看源码, 如果类型是 dialog, 会调用 closeAll(“dialog”), 清除之前所有的 [type=dialog] 消息框. 只需要将 type 设置不为 dialog 即可不被清除, 不影响超时淡出. https://github.com/se...

2018-08-27 19:23:54 738

原创 [原创] 在已有 python2 代码快速实现协程. gevent grequests 协程效率对比

重新研究了一下 python 协程, 用 在 python2 中用 gevent/grequests 实现, 做了一些对比. 目的是想在 python2 的现有代码的基础上, 在改动量最小的前提下实现协程.grequests 也是用 gevent 实现的, 对 requests 进行了一些补丁修改.#! -*- coding:utf8import geventimport threa...

2018-08-02 18:14:26 549

原创 [原创] 记一次 ElasticSearch 问题查找 - 数据同步非常慢

开始是三个节点组成的集群, 后加了两台. 但是同步数据变的非常慢. 追查问题后发现是 ulimit 配置不当导致.$ curl 192.168.3.48:9200/_nodes/stats/process?filter_path=**.max_file_descriptors{ "nodes": { "bf79DOwKQ4GJxJcsIaFDqQ": { ...

2018-08-02 17:16:53 1220

原创 [原创] NAS iscsi 开机启动自动挂载

NAS 开机启动自动挂载. 局域网内有一台 NAS, 上面分了多块 Target, 多台机器都会使用这台 NAS, 但是发现 NAS 自动挂载有问题. 明明只在某台机器挂载了某一个 Target, 但所有机器重启之后, 这台机器上可能会挂载上别的 Target. (只是链接到这台机器, fdisk 可以看到, 没有实际挂载到某个目录), 所有导致别的机器不能正常挂载.所以只能保持 isc...

2018-07-25 11:25:20 3553

原创 【原创】elasticsearch 一些整理总结

16年公司检索系统是用的 solr, 但使用过程中发现太糟心, 十分难用- - 17年初换到 es. 把当时整理的知识点记录一下. 机器配置: 1台 centos, 2台 ubuntu. 内存: 64G, CPU: 8核 硬盘: 8TB(SAS, es 数据), 250GB(SSD, 系统) es 版本: 5.4.0数据量: 目前为止一共40亿数据 内存: jvm 分配31G, ...

2018-07-09 16:46:21 922

原创 [原创] Python 让 SimpleHTTPServer 支持DELETE, 并且支持并发下载

将常有一些小需求搭建一个文件服务器下载数据, 大家一般都会用 python -m SimpleHTTPServer 但是这样有个问题, 这样是阻塞模式. 多个人下载文件时, 如果有一个人在下大文件, 后面的人就会一直等待响应.# 查看 SimpleHTTPServer 源码# lib/python2.7/SimpleHTTPServer.py def test(HandlerCla...

2018-06-06 17:24:58 1149

原创 【原创】Nominatim 快速部署/备份还原(PGSQL 数据库文件)

nominatim 物理迁移, 其实是迁移 PGSQL 的数据库文件. 因为 nominatim 数据库文件少则几个GB, 多则几百 GB. 如果每次部署都使用 setup.php 进行导入, 时间非常慢. 测试 1.5MB 的马尔代夫地理信息 pbf 文件, 整个入库用了5分钟. (测试机用的1核1G, 不过1.5MB 用5分钟实在有点过分) 使用物理备份恢复, 脚本可以做到一键且秒级恢复...

2018-05-15 12:31:27 748 1

原创 [原创] RavenDB 安装 使用

RavenDB 安装/使用上一篇文章介绍了 CouchDB, 这篇文章介绍一下 RavenDB安装使用. RavenDB 也是支持对记录做版本管理的数据库. 默认是不支持的, 需要手动设置. 官网: https://ravendb.net RavenDB Github: https://github.com/ravendb/ravendb RavenDB-python Github: htt

2018-04-11 18:40:42 1371 1

原创 [原创] couchdb 安装/使用

couchdb 安装/使用 需求: 要对数据库中的记录做版本管理. 通过调查, 排除了 es, mongodb, couchBase, ravendb 最终选用了 couchdb. 之所以选用 couchdb, 是因为 couchdb 是支持对文档所版本管理. 而且默认查询可以使获取最新版本记录. es 的 version 仅做记录用, 旧版本的数据不可查, 并且会在特...

2018-04-09 20:30:07 2829

原创 [原创] elasticsearch 导出工具 elasticdump

// 日志记录 2017-11 项目是 node 写的, 依赖 nodejs, https://www.npmjs.com/package/elasticdump GitHub 地址: https://github.com/taskrabbit/elasticsearch-dump备份文件elasticdump --type=data --input="http://localhost:9200

2018-04-08 18:46:37 7286

原创 [原创] 前端 diff 文本 - mergely

介绍需要前端展示文本编辑历史, 并做 diff. 找了三个库, 分别是: CodeMirror, DiffMatchPatch, Mergely CodeMirror 效果不是很好, DiffMatchPatch 是 Google 开发的, 感觉实现后效果同样不好.最后选用了 Mergely. 实际上, Mergely 用到了 CodeMirror, 而 CodeMirror 用到...

2018-04-08 11:37:56 7564 11

原创 [原创] 即时编辑 html JQuery 库 - Jeditable

官网地址: https://appelsiini.net/projects/jeditable/ Github 地址: https://github.com/NicolasCARPi/jquery_jeditable这是实现的仅仅是修改 HTML 的展示, 所以不需要发请求提交更改. editable 第一个参数设置为 function 即可替换默认的函数.示例&lt;h...

2018-03-27 11:41:41 918

原创 [原创] 嵌入式浏览器 使用 nw.js 打包windows 版的嵌入式浏览器 移动桌面应用

嵌入式浏览器调研CEF (Chromium Embedded Framework) : https://bitbucket.org/chromiumembedded/cefnw.js(Chromium/Node.js) https://github.com/nwjs/nw.jsHEX(CEF) https://github.com/netease-youdao/hexelectron...

2018-03-06 18:37:09 1763

原创 [原创] 树莓派 shell 重启 USB 设备

在树莓派上用 shell 重启 usb 设备cd /sys/devices/platform/soc/echo 0 > buspower; sleep 10; echo 1 > buspower;

2018-01-26 13:03:40 925 2

原创 [原创]解决Chrome dev 模式下 调试插件的问题

Debug 网页的时候, 如果 Chrome 安装了一些插件, Chrome 会对这些插件也进行 Debug, 尤其是一些周期性的 JS 代码. 网上解决办法都是屏蔽某一个, 其实可以屏蔽全部. 打开 dev tool, 再打开设置(F1), 在 blackboxing 加入一项: ^chrome-extension://.*\.js$ 即可忽略所有拓展程序. 还以用正则过滤某个子域名, UR

2018-01-11 19:03:27 858

原创 [原创]Python 运行 shell 获取输出结果

首先使用内置模块os.>>> import os>>> code = os.system("pwd && sleep 2")# /User/zhipeng>>> print code# 0 问题是 os.system 只能获取到结束状态使用内置模块 subprocess>>> import subprocess>>> subprocess.Popen("pwd && sleep 2"

2017-12-20 18:40:23 10269

原创 [原创] 树莓派使用多个联通4G上网卡

需求 在树莓派上使用4G 上网卡上网. 以下内容都是在设备没有加入任何网络的情况下进行的. 如设备已连入局域网或者可以访问公网, 直接翻到文章最后.下载树莓派系统镜像我下载的是 ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img.xz Torrent: magnet:?xt=urn:btih:D0F23C109D8662

2017-12-06 17:14:05 11526 6

原创 [原创] Python 使用指定的网卡发送HTTP请求

多个网卡的情况, 如何使用指定的网卡发送数据?$ curl --interface eth0 www.baidu.com # curl interface 可以指定网卡.阅读 urllib.py 的源码, 追述到 open_http –> httplib.HTTP –> httplib.HTTP._connection_class = HTTPConnection

2017-12-04 17:07:06 6162 2

原创 [原创] Demo: Python crawler use chrome headless - pyppeteer

python crawler use chrome headless. Only support python version 3.5+.Download Chrome or ChromiumDownload pyppeteer $ python3 -m pip install pyppeteerDemoimport asynciofrom pyppeteer.launcher impor

2017-11-29 23:02:56 3267 6

原创 [原创] Python 仅获取响应头, 不获取实体

Python Just get Response Headers, not get content.1. Use HEAD method>>> import requests>>> res = requests.head("http://www.baidu.com/")>>> req.head("https://www.baidu.com/").headers{'Content-Encodin

2017-10-13 15:02:16 10669 4

原创 [原创] 本地新建分支 并推送到远程

# 设置分支名, git 地址new_branch="dev";git_address="git:xxx/xxx.git";# 创建本地目录mkdir $new_branchecho "init" > READMEcd $new_branch# 初始化本地仓库git init# 添加远程仓库地址git remote add origin $git_address# 切换到分支gi

2017-08-29 14:31:03 744

原创 [原创] linux 创建账户 首次登录强制修改密码

ubuntuu=testuser;p=$u;adduser $u --ingroup sudo --disabled-password --gecos "" && echo "$u:$p" |chpasswd;chage -l $u;chage -d 0 $ucentosu=testuser;p=$u;adduser $u -G wheel && echo "$u:$p" |chpasswd;

2017-08-29 13:58:27 2671

原创 [原创] Nagios install Plugin check_iostat

使用 Nagios 监控机器 IO 性能 Nagios 安装过程略过 插件一般存放于: /usr/lib/nagios/plugins/ 或者 /usr/lib64/nagios/plugins/, 或者 /usr/lib/nagios3/plugins/在Nagios 官网查找想要的插件 Category: Pluginscheck_iostat 地址在这里: check_iosta

2017-07-13 16:15:06 544

原创 [原创] Centos 安装部署 Hadoop 集群和 hive

Centos 7.3 安装部署 Hadoop集群环境部署Server: Centos 7.3 (CPU:1 Core Mem: 1G Disk: 40G)Hadoop: 2.8.0Hive: 2.1.1JDK: 1.8.0---Master: 192.168.10.1Hadoop-01: 192.168.10.2Hadoop-02: 192.168.10.3 如果没有特别声明, 所有

2017-05-25 18:26:01 532

原创 [原创] Nginx 添加授权访问 使用 httpd-tools

安装 nginx安装 iptables iptables-services配置 iptables启动 iptables安装 httpd-tools生成密码文件配置 nginx启动 nginx安装 nginxyum install -y nginx安装 iptables iptables-services使用 iptables-services 管理配置文件yum install

2017-03-28 17:27:58 4262

原创 【原创】Python Mongo 批量操作

向数据库新增大量数据是经常性的需求, pymongo 支持 insert_many.但主键是我们自己外部定义生成的, 并且实现更新记录, 就有点困难.注: MongoDB 主键字段是_id# insert_many 用法insert_many(documents, ordered=True, bypass_document_validation=False)Insert

2017-03-20 14:49:24 5476

原创 【原创】MAC-OX install mpi

install$ brew install open-mpi$ brew reinstall gcc --without-multilib$ sudo pip install mpi4pytest$ mpirun -np 2 echo 'hello~'$ mpiexec -n 5 python -m mpi4py helloworld异常[zhipeng-Ma

2017-03-20 14:49:22 875

原创 【原创】基于 windowsXP/Linux 搭建高可用代理服务器集群

基于 windowsXP/Linux 搭建高可用代理服务器集群1 需求:爬虫需要代理服务, 突破网站限制. 要求 IP可变\稳定\节约\2 方案:购买N台云服务器 VPS, 需要有固定 IP, 公网可访问. 用于代理上游.购买 N 个电信/移动/联通拨号资源. 要求可拨号/可远程(RDP3 注意事项:拨号资源 IP 不固定, 拨号后需要能够通过公网访问.客户端, WindowsXP, 下游代理服务...

2017-03-20 14:49:19 577

原创 【原创】Java HttpClient Error: Connection refused

Java HttpClient Raise Error: Connection http://www.xxx.com refused在 Android 上运行 jar,目的是从服务器一直获取消息, 使用 HTTP 服务.但是每次启动进程, 当请求次数达到1010 时候, 总是会报错: Connection http://www.xxx.com refused很规律, 每次当请求1000次

2017-03-20 14:49:16 1273

原创 【原创】Java JNI 参数

反编译一个 APP 时候, 一个.so通过 loadLibrary加载. 把. so 逆向后, 函数名已经混淆,但无法根据参数信息获取究竟哪一个才是对外提供的接口.所以了解一下 JNI,so文件中代码如何编码, 参数如何定义a. 无参数 HelloJNI.Javapublic class HelloJNI { static { System.loadLibrary

2017-03-20 14:49:14 132

原创 【原创】python requests support socks proxy

让python requests 支持socks5代理 requests support socket proxy pip install —upgrade requests “requests[socks]”import requestsrequests.get("http://www.google.com", proxies={"http":"sock5://127.0.0.1:1

2017-03-20 14:49:11 381

空空如也

博客等级和积分似乎没有任何变化

发表于 2018-04-11 最后回复 2018-04-12

空空如也

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

TA关注的人 TA的粉丝

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