python高度健壮性的异常和超时问题

python高度健壮性的异常和超时问题
python高度健壮性的异常和超时问题 爬虫/Python这类型程序典型特征是意外多,无法确保每次请求都是稳定的返回统一的结果,要提高健壮性,能对错误数据or超时or程序死锁等都能进行处理,才能确保程序几个月不停止。 一、基础try&except异常处理 try&except的语句作用不仅仅是要让其捕获异常更重要的是让其忽略异常,因为爬虫中的绝大多数异常可能重新请求就不存在,因此,发现异常的时候将其任务队...

dpkg -i 依赖包异常

dpkg -i 依赖包异常
在使用sudo dpkg -i 安装deb包后,会出现依赖包关系而不能正常安装软件,这个时候先更新下源然后解决依赖关系后重装即可。[ubuntu dpkg异常] # 更新 sudo apt-get update # 解决依赖关系 sudo apt-get -f install # 重新安装 sudo dpkg -i xxx.deb  

后台运行python程序(gui and not gui)

后台运行python程序(gui and not gui)
后台运行python程序(gui and not gui) 依赖说明: xvfb:虚拟设备,即一个虚拟的X服务器环境 [主要适用于Run Gui program on Server OS] pyvirtualdisplay:a python wrapper for Xvfb, Xephyr and Xvnc 依赖安装: sudo apt-get install xvfb pip install pyvirtualdisplay 示例代码: #!/usr/bin/env python from pyvirtualdisplay import Display from selenium import webdriver display =...

linux冷备

linux冷备
资源有限的情况下,冷备的方案 一、确保数据安全性 硬盘用raid10 & 异地推送。 可利用工具将google drive挂载到linux目录下。 shell for ftp 传送到ftp服务器 二、冷备脚本,防止出现rm -rf path的致命错误。 #!/bin/bash # 要备份的数据路径 WEB_DATA=/backup # 定义备份数据的名字和旧备份数据的名字 WebBakName=Web_$(date +%Y%m%d).tar.gz # 删除本地3天前的数据 rm -rf /root/Web_$(date ...

linux热备

linux热备
这里不是传统意义上的热备方案,因为GCE流量太贵【0.23美元/GB】,只能做定时“热备”。 一、利用linux rsync热备。首先安装: # ubuntu/debian apt install rsync # centos yum install rsync 二、rsync 同步命令,更高级的用法请--help: # /data/为要备份的本地目录 # /backup/gce/为要备份至服务器的哪个目录 rsync -avu --progress --delete /data/ root@$ip:/backup/gce/ 三、利用脚本自动备份,...

denyhosts防御ssh暴力破解

denyhosts防御ssh暴力破解
DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重 复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能。 首先安装epel扩展源: sudo yum -y install epel-release 安装denyhosts: # 搜索yum源 sudo yum search denyhosts # 安装服务 sudo yum -y install denyhosts 配置文件详解: # 多久后解禁,为空则永不解禁 PURGE_DENY = # 允许无效...

GRE隧道配置

GRE隧道配置
  本篇介绍在两台服务器之间如何操作配置开启GRE隧道: 一、 # 服务器A网卡信息: inet 199.99.88.77 netmask 255.255.255.0 broadcast 199.99.88.255 # 服务器B网卡信息: inet 144.33.22.11 netmask 255.255.255.0 broadcast 144.33.22.255 二、 # 分别在A和B服务器开启IP_GRE模块 # 服务器A: [root@A ~]# modprobe ip_gre [root@A ~]# lsmod | grep gre ip_gre 22...

Selenium+PhantomJS(系列八:CSS选择器)

Selenium+PhantomJS(系列八:CSS选择器)
Selenium+PhantomJS(系列八:CSS选择器)   PhantomJS主要是通过JavaScript和CoffeeScript控制WebKit的CSS选择器、可缩放矢量图形SVG和HTTP网络等各个模块。   我们可以利用CSS选择器进行一些复杂的值选取操作。   querySelector示例一:   var content = page.evaluate(function () { var element = document.querySelector('#elem'); return element.textContent; }); cons...

Selenium+PhantomJS(系列七:OCR的优化技巧)

Selenium+PhantomJS(系列七:OCR的优化技巧)
Selenium+PhantomJS(系列七:OCR的优化技巧) Phantomjs可以选择元素区域截图,然后可以利用OCR做验证码识别,或做一些图形图像分析,等等。OCR引擎推荐tesseract。中文识别库下载:https://codeload.github.com/tesseract-ocr/tessdata/zip/master,另外tesseract支持字库训练,可以方便的训练出适合某种场景的识别库出来。这里简单说下OCR的优化。 优化技巧一: 1、网页按照比例放大后,再截图: driver...

Selenium+PhantomJS(系列六:元素区域截图,OCR)

Selenium+PhantomJS(系列六:元素区域截图,OCR)
Selenium+PhantomJS系列教程: Selenium+PhantomJS(系列一:设置User-Agent) Selenium+PhantomJS(系列二:模拟登录淘宝) Selenium+PhantomJS(系列三:模拟登录知乎) Selenium+PhantomJS(系列四:模拟登录微博) Selenium+PhantomJS(系列五:selenium的等待) Selenium+PhantomJS(系列六:元素区域截图,OCR) Selenium+PhantomJS(系列六:元素区域截图,OCR),针对元素区域截图,然后可以利用...