Selenium突破验证的两种方式

一、利用 Chrome DevTools 协议远程控制Chrome 添加Chrome的环境变量 cmd或者命令行下输入命令: chrome.exe --remote-debugging-port=9999 --user-data-dir="D:\selenum\AutomationProfile" # remote-debugging-port 为指定打开的端口 # user-data-dir 为指定创建新 Chrome 配置文件的目录 爬虫程序如下: from selenium import webdriver from selenium.webdriver.chrome.options import Options from selenium.webdriver.support.ui import WebDriverWait chrome_debug_port = 9999 options = Options() options.add_experimental_option("debuggerAddress", f"127.0.0.1:{chrome_debug_port}...

Elasticsearch 本地备份与还原

创建共享目录 每个节点安装sshfs yum install -y epel-release yum -y install fuse-sshfs 选定一个备份目录做共享目录 例如我有ns0(10.1.1.0)、ns1(10.1.1.1)、ns2(10.1.1.2,主节点)三个节点,我选择ns2下的/home/dev/esbk目录做备份 # ns2下创建 mkdir /home/dev/esbk chmod -R 777 esbk 其他所有节点挂载目录 # ns0、ns1下操作 sshfs root@10.1.1.2:/home/dev/esbk /home/dev/esbk -o allow_other # 在ns0、ns1测试运行es的用户(我的为dev)是否有对共享目录的写的权限 sudo -u dev touch /home/dev/esbk/test # 在ns2上/home/dev/esbk查看有没有成功创建test文件 # 如果要删除共享目录需要卸载挂载目录 fusermount -u filename 修改所有节点的elasticsearch.yml文件...

Centos7 MySQL 5.7开启SSL连接

SSL的作用 实现客户端和服务器之间的安全通讯(加密和完整性校验) 配置安装源 yum install -y https://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 配置安装包 yum install -y mysql-community-server mysql-community-devel mysql-community-client 启动数据库 systemctl start mysqld systemctl enable mysqld 初始化数据库 获取临时密码 cat /var/log/mysqld.log | grep 'A temporary password' 初始化数据库mysql_secure_installation mysql_secure_installation Enter password for user root:ufqLq&R6tgl% [...] New password:******* Re-enter new password:*******...

Linux合并磁盘创建LVM逻辑卷挂载到一个目录

查看原有磁盘目录,输入lsblk: 新增两块磁盘后的目录: 创建pv pvcreate /dev/vdb //硬盘1 pvcreate /dev/vdc //硬盘2 创建vg // vgcreate [自定义LVM名称] [磁盘路径] // 先使用硬盘1创建vg:LVM vgcreate LVM /dev/vdb 扩展vg // vgextend [自定义vg名称] [磁盘路径] // 使用硬盘2扩展vg vgextend LVM /dev/vdc 创建lv // lvcreate -L[自定义分区大小] -n[自定义分区名称] [vg名称] // 分区大小不能超过硬盘容量总和,再减个1G左右 // 大小用可以用G或T,可以用小数 lvcreate -L19G -nDB_DATA LVM 格式化分区 // mkfs -t [文件系统] [分区位置] mkfs -t ext4 /dev/LVM/DB_DATA 创建挂载目录 // 如果需要挂载到/root/data目录下 mkdir /root/data 挂载分区 // ...

Elasticsearch 5及其插件安装文档

Elasticsearch安装 官方文档 下载Elasticsearch 5 在Elasticsearch文件夹下配置节点信息(10.35.16.67做master节点和10.35.16.143作分节点): master结点配置文件添加 # /Elasticsearch5.x/config/elasticsearch.yml cluster.name: es node.name: es0 network.host: 0.0.0.0 http.port: 9200 node.master: true bootstrap.memory_lock: true bootstrap.system_call_filter: false discovery.zen.ping.unicast.hosts: ["10.35.16.67:9300","10.35.16.143:9300","10.35.16.67:9301"] http.cors.enabled: true http.cors.allow-origin: "*" 分节点配置文件添加 # /Elasticsearch5.x/conf...

搭建Ngrok实现内网穿透

安装相关依赖 yum install -y git golang openssl 下载ngrok项目到本地 git clone https://github.com/inconshreveable/ngrok.git /usr/local/ngrok 生成证书 # 设置环境变量,替换为自己的独立域名,也可不设置把后面$NGROK_DOMAIN替换称自己的域名 export NGROK_DOMAIN="xxx.jixian.io" #进入到ngrok目录生成证书 cd /usr/local/ngrok # 下面的命令用于生成证书 openssl genrsa -out rootCA.key 2048 openssl req -x509 -new -nodes -key rootCA.key -subj "/CN=$NGROK_DOMAIN" -days 5000 -out rootCA.pem openssl genrsa -out device.key 2048 openssl req -new -key device.key -subj "/CN=$NGROK_DOMAI...

Hexo的Anatole主题修改

之前的NEXT主题看腻了,太多人使用这个主题了,所以想换个博客主题。偶然发现Ben02做的Anatole这个主题感觉挺不错的。安装上之后发现实在是太过简单了,很多东西都没,所以就自己动手改造主题了,就是现在博客这个主题了。 原主题样子: 改造后的样子: 以后肯定会继续修改的,我自己了解点JS,完全不会node.js,所以不要太在意代码。 附上我的项目地址 hexo-theme-Anatole-Core Ben02的原主题项目地址:hexo-theme-Anatole...

Arch Linux使Gnome终端透明解决办法

前话 原版的gnome-terminal是不能调透明的,这是因为在早些版本的时候去掉了这个功能,后来Fedora的开发者有把这个透明特性给patch回去了,Arch Linux AUR包里有这个加了patch的版本。 教程 安装yaourt pacman -S yaourt 安装gnome-terminal-transparency yaourt -S gnome-terminal-transparency 最后注销再登陆就可以在终端配置文件调节透明度了...

Arch Linux 安装教程

前话 最近老作死美化linux,在系统上装装卸卸,导致一些环境依赖包缺失,又不知道具体缺失哪些,所以就只能重装,借这次重装写篇教程,此篇教程大都来源于CSDN的 ArchLinux安装图文教程,但发现此教程稍微有些地方需要修改了,这里会详细说明。 教程 制作镜像 准备Arch Linux镜像和Ultra ISO软件 Arch Linux 镜像下载链接:点此直达 Ultra ISO下载链接:点此直达 用Ultra ISO打开Arch Linux镜像,插上U盘,点启动,写入硬盘映像,选好U盘,最重要的一点是,写入方式一定要选RAW!!! 之前做了很多次启动U盘都不能安装。 开机 选择U盘启动后,选择第一个,然后进入U盘系统的命令行界面。 进行联网 WIFI的执行: wifi-menu 网线的一般都会直接连接,有没有连接网络可以用Ping测试。 同步时间 timedatectl set-ntp true 编辑镜像站文件 CSDN的教程的163的镜像路径会出现一些包找不到,用下面的路径则没这个问题。 ano /etc/pacman.d/mirrorlist 在文件最前面添加以下条...

Scrapy利用Selenium和Xvfb实现非图形界面爬虫

前言 最近在做一个天眼查的爬虫,直接用Scrapy爬会被识别为电脑,然后需要验证码,更改时间间隔都没用,后来发现是cookie的缘故,在请求天眼查的网页时发现cookie一直在变。所以Scrapy直接爬如果没办法解决验证码的问题是肯定失败,由于PhantomJS不是真正的浏览器,所以用PhantomJS也不行,所以最终的想到用Selenium控制Chrome浏览器来访问。写好发现设置好时间间隔,并不会出现验证码。最终代码写了3800多行,因为还涉及到N多的模拟点击,然后做测试发现要爬太久了,小公司一两分钟左右,但大公司可能要十多分钟,太难等,也太耗费电脑性能,所以我就想把爬虫放在服务器上跑,然后发现SSH命令是打开不了GUI程序的,运行爬虫也不能打开Chrome。直接报错:cannot open display,然后谷歌一下,发现了这个Xvfb这个软件。 Xvfb是在虚拟内存中执行所有图形操作,而不显示任何屏幕输出。相当于创建了一个虚拟显示器。 安装Xvfb和相关插件还有chrome浏览器: sudo apt-get update && sudo apt-get install -y...