# AutoScript **Repository Path**: rajscode/AutoScript ## Basic Information - **Project Name**: AutoScript - **Description**: 自动抓取微信公众号文章数据 - **Primary Language**: C# - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 3 - **Created**: 2019-09-12 - **Last Updated**: 2022-08-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 部署文档 ## 安装依赖 目录 ./Dependencies (手动去除后缀名中的下划线 _ ) ### 安装 Node.js #### 步骤 安装 node-v12.9.1-x64.msi, 将 node.exe 所在目录添加至 Path 环境变量 #### 检验 新建 cmd 窗口, 输入 `node -v` , 应输出 node.js 版本 ### 安装 JDK, JRE #### 步骤 安装 jdk1.8.0_73.exe,记住安装目录, 下面添加环境变量 JAVA_HOME 会有需要 变量名:JAVA_HOME 变量值:这里的变量值需要填写你安装 jdk 软件使得安装目录。 变量名:CLASSPATH 变量值:.%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一点) 往 Path 中添加 %JAVA_HOME%\bin %JAVA_HOME%\jre\bin #### 检验 新建 cmd 窗口, 输入 `javac`, 结果应与下图相似 ![https://github.com/RajeshJs/AutoScript/blob/master/asserts/%E6%A3%80%E9%AA%8Cjdk%E5%AE%89%E8%A3%85%E6%88%90%E5%8A%9F%E4%B8%8E%E5%90%A6.png?raw=true](https://github.com/RajeshJs/AutoScript/blob/master/asserts/%E6%A3%80%E9%AA%8Cjdk%E5%AE%89%E8%A3%85%E6%88%90%E5%8A%9F%E4%B8%8E%E5%90%A6.png?raw=true) ### 安装 Android SDK #### 步骤 解压 Android_SDK.rar 添加环境变量 变量名:ANDROID_HOME 变量值:上述 Android_SDK.rar 解压的目标目录 往 Path 中添加 %ANDROID_HOME%\tools %ANDROID_HOME%\platform-tools #### 检验 - ### 安装 Appium #### 步骤 新建 cmd 窗口, 输入 `npm install -g appium`, 完成之后, 输入 `npm install -g appium-doctor` #### 检验 新建 cmd 窗口, 输入 `appium-doctor` , appium 会检测本机的 node.js 是否安装, ANDROID_HOME , JAVA_HOME 是否设置, adb.exe 是否存在(一般都在%ANDROID_HOME%\platform-tools 下, 上述步骤中已将此加入到环境变量 Path 中)。 如果输出 `Dianostic for necessary dependencies completed,no fix needed` 说明对于 appium 必要的依赖全都已安装设置完成。 ### 安装 Appium-Desktop #### 步骤 安装 Appium-windows-1.13.0.exe #### 检验 运行, 启动一个 appium server ### 安装 DotNet Core Runtime 2.2 #### 步骤 安装 dotnet-hosting-2.2.0-win.exe #### 检验 新建 cmd 窗口, 输入 `dotnet --info` , 查看 .Net Core runtimes installed 一栏中是否有 2.2.0 版本即可 ### 安装 AnyProxy #### 步骤 新建 cmd 窗口, 输入 `npm install -g anyproxy` #### 检验 新建 cmd 窗口, 输入 `anyproxy --version` ### 安装 Mysql #### 步骤 安装 安装 mysql-installer-community-8.0.17.0.msi, 安装过程中会提示输入 root 账号的密码, 请牢记此密码。 将 mysql 的安装目录, 例如: `C:\Program Files\MySQL\MySQL Server 8.0\bin` 添加至环境变量 Path 中 #### 检验 新建 cmd, 输入 `mysql -u root -p` , 回车, 紧接着输入上述步骤设置的 root 账号密码 ### 安装 RabbitMQ #### 步骤 先安装 erlang 依赖, otp_win64_22.0.exe 然后安装 rabbitmq-server-3.7.17.exe , 完成之后, 新建 cmd , 进入到 mq 安装目录下的 sbin 目录, 然后输入 `rabbitmq_plugins.bat enable rabbitmq_management` 然后重启 mq 的 windows 服务 #### 检验 打开浏览器,输入 http://127.0.0.1:15672 , 进入 mq 控制台 ### 依赖安装完成 至此,所有依赖安装完成 ## 部署服务 ### 初始化数据结构 新建 cmd, 输入 `mysql -u root -p` , 然后输入密码 输入 `SELECT USER,PLUGIN FROM MYSQL.USER;` 查看 root 账户是不是使用的 `mysql_native_password` 作为认证插件。 如果不是, 则运行 `ALTER user 'root'@'localhost' identified with mysql_native_password by '原先设定的 root 密码'` 然后使用 `Navicat Premium` (任意 mysql 客户端) ,新建数据库 wx, 执行 `initialize.sql` 中的脚本。 ### 启动 Appium Server 运行 appium-desktop , 切换到 Advanced 选项卡, 勾选 `Relaxed Security` , 其他的默认即可, 点击 `Save As Preset` , 保存命名为 `appium server`, 然后切换到 Presets 选项卡。 选择 Presets 下的 `appium server` , 点击 Start Server ### 部署代理服务 新建 cmd , 输入 `anyproxy-ca` 生成证书, 证书需要安装在服务器上, 另外也要安装在手机终端上 进入 `ProxyServer` 所在目录 , 执行 `npm i` 然后执行 `npm start` 在浏览器中输入 `http://localhost:8002` 可以进入代理服务器的监控页面 ### 部署自动化服务 在 publish 目录打开 cmd, 输入 `dotnet SimulationCenter.dll` ## ISSUES ### 表情编码 utf-8编码可能2个字节、3个字节、4个字节的字符,但是MySQL的utf8编码只支持3字节的数据,而移动端的表情数据是4个字节的字符。如果直接往采用utf-8编码的数据库中插入表情数据,程序中将报SQL异常: `Incorrect string value: ``'\xF0\x9F\x92\x94'` `for` `column ` **更改数据库的编码为utf8mb4:** **1. MySQL的版本** utf8mb4的最低mysql版本支持版本为5.5.3+,若不是,请升级到较新版本。 **2. MySQL驱动** 5.1.34可用,最低不能低于5.1.13