-
background // 主要是chrome插件的底层运行代码,主要控制当插件开启后,自动开启三个窗口(一个是保持登陆态的随机阿里妈妈随机url访问窗口;一个是阿里妈妈淘客订单的下载窗口,该窗口有创建时间订单和结算时间两个下载任务,两个任务间隔2分钟;最后一个是阿里妈妈推广数据的下载窗口,每次下载任务间隔60分钟)
-
popup // 点按chrome浏览器右上角插件图标后,弹出的与用户交互的页面,本插件的popup没有实际的用途和逻辑
-
scripts // 主要包含嵌入到三个任务窗口的逻辑代码,代码中通过操作DOM的方式,设置下载按钮的时间并触发click事件实现文档下载
-
server // 文件上传的node监控服务。插件的上传是通过node服务,实时监控指定文件夹的文件变更,跟踪目标文件,分析下载动作。当文件下载动作触发并完成下载,开始用node服务上传文件,文件上传成功则删除该目标文件,如果文件上传失败,保留目标文件,用以后续数据恢复
- .log // 保存node监控服务每一步的日志输出
- account.txt // 保存着当前账户名称,每次部署新插件都要手动把新账号手写到本文件中
- index.js // node服务的主要业务逻辑
- package.json // 服务依赖模块
1 添加chrome浏览器新用户,命名为“爬订单” 我们在新打开的这个“爬订单”用户的chrome浏览器中进行下一步操作
2 将插件(即本项目)解压后放到某个磁盘根目录,比如d盘
3 在“爬订单”的chrome浏览器地址栏输入chrome://settings,打开高级设置->下载内容,将文件的默认下载位置修改为“步骤2中的项目磁盘根目录地址/taoke-order/server”(node服务监控的目录是同级目录),并关闭“下载前询问每个文件的保存位置”
4 在上一步浏览器的高级设置->隐私设置和安全性->内容设置->自动下载项,勾选允许所有网站自动下载多个文件(因为上面的三个任务窗口中,下载淘客订单文件时,有可能并行下载多个文件:“创建时间”为索引的订单和“结算时间”为索引的订单)
5 安装最新LTS版本node
6 安装最新版comEmu(comEmu是一款增强版cmd窗口,在关闭窗口时会有二次提醒,并且可以更改tab的名称)
7 将账号名称(阿里妈妈登录成功后显示的账号名称,需要和奶牛、bos后台的阿里妈妈淘客服务中添加的账号名称一致)复制到文件“项目磁盘根目录/taoke-order/server/account.txt”,打开conEmu,用cd命令进入到“项目磁盘根目录/taoke-order/server”,在这里输入“node index”并按下回车,可以看到控制台输出“成功获取账号:XXX”表示node文件监控服务已开启
因为订单的运行条件比较苛刻,要尽量避免认为干扰,因此在插件稳定运行后,需要进行如下的操作:
- 删除“爬订单”的chrome账号的快捷方式入口
- 删除chrome浏览器的桌面快捷方式入口
- 将桌面其他账号(如果之前没有添加过账号,在添加完“爬订单”的账号之后,先前的窗口会默认变成“用户1”)的chrome浏览器桌面快捷方式锁定到任务栏
上述这些步骤是为了避免其他人员使用“爬订单”账号的chrome浏览器,对插件的配置和运行环境造成影响
- 打开爬订单账户的浏览器
- chrome://extension,去掉勾选“爬订单插件”
- 关掉爬订单插件的三个浏览器小窗口(如果有)
- 新开tab输入pub.alimama.com,退出当前登陆账号(如果是登录状态),然后关掉tab
- 再次进入chrome插件管理页tab,勾选爬订单插件
- 新开tab,并打开开发者工具,然后输入pub.alimama.com,登录账号
- 弹出通知“插件初始化成功“,三个小窗口弹出
- CMD正常显示进度
1 以“爬订单”身份打开chrome浏览器,如果右上角显示当前账户为“爬订单”,则打开正确,进行下一步,如果不是,需要点击右上角账号位置,切换账户。账户列表中有“爬订单”,直接选择即可打开“爬订单”账户的新窗口,如果没有在列表中显示,则需要点击管理用户,在所有的用户列表中就可以看见“爬订单”账户了,选中打开即可
2 账户切换完成之后,在浏览器输入框输入chrome://extensions,会出现爬订单插件,首先去掉勾选,关掉插件。这里关掉插件后,插件开启时打开的三个小窗口并不会自动关闭,需要手动关闭
3 插件关闭完成之后,在浏览器地址栏输入http://www.alimama.com,登录阿里妈妈账号,如果打开网页发现账号已登录则直接进行下一步,反之需要登录账号
4 账号登陆完之后,需要重启文件监控服务(即CMD所运行的node服务,用来监控文件状态,上传、删除下载的文件)。 首先查看服务是否停止,服务以外中断时,上图面板要么不存在(面板不存在时,直接点击任务栏的程序快捷方式即可重启),要么会变成可以键入文本的状态(服务正常运行时,该面板是无法键入的,如果是可键入状态,直接键入"node index"按下enter即可),这两种情况下,需要重启服务
5 重启服务首先要打开加强版CMD,然后用CD命令进入到服务路径(路径可以在浏览器extension里查看),“项目根目录/server”,成功进入该路径后,输入node index,面板显示成功获取账号,服务开启成功
6 现在需要重新开启插件,到chrome浏览器插件里面勾选taoke-order即可,然后关闭掉“爬订单”账户的chrome浏览器(这样可以尽量避免认为操作“爬订单”账户的chrome浏览器)
- 阿里妈妈默认每天下载的淘客订单是最多1w条记录,如果订单量巨大,会下载最新的1w条,而插件默认的是会导入最近3天的数据,所以对于稍微活跃的账号,很容易出现截断现象。因此在进进行插件恢复的时候,如果插件异常停止距恢复时已经跨越一天,则在恢复完订单后,需要到项目/server/.log文件中查看文件上传记录数有没有超过1w条,如果超过1w条,则需要按天和按找创建时间及结算时间来逐天恢数据(恢复很简单,可以到导入推广数据的窗口中操作,即打开的左侧三个窗口中的最上面的一个,在里面直接点击下载即可,因为下载的文件也会被node服务监控到