百度站长批量添加子站工具V2:函数版
程序说明
上一个版本是昨天晚上写的,这个版本是今天早上在昨天写的版本的基础上增加的:
1.调试时输出当前时间,方便看哪里出了问题延时时间比较长,并可以记录程序运行的总时间;
2.绑定搜狗的窗口句柄,在地址栏写入网址;
3.随机生成二级域名的前缀与二级域名,并保存在本地C盘目录下;
4.优化识别域名重复错误时的"忽略错误"的点击;
程序截图
这个版本的二级域名添加工函数对会多一些;
程序源码
域名 = "eeooe.cn" 根目录 = "C:\" //下面是程序正文=================================================== 保存文件夹路径 = 根目录 + "=================" + 域名 二级前缀路径 = 保存文件夹路径 + "\二级前缀.txt" 二级域名路径 = 保存文件夹路径 + "\二级域名.txt" '获取当前时间 Function 当前时间 当前时间 = Plugin.Sys.GetDateTime() & " " End Function Randomize //初始化随机数生成器 '1.检测文件夹是否存在,如不存在则新建 Function 检测文件夹(文件夹) Set fso = CreateObject("Scripting.FileSystemObject") IsFile = fso.FolderExists(文件夹) If IsFile = 0 Then Call Plugin.File.CreateFolder(文件夹) Else //TracePrint 文件夹&" 存在" End If End Function '2.检测文件是否存在,如不存在则新建 Function 检测文件(文件) IsFile = Plugin.File.IsFileExit(文件) If IsFile = false Then Call Plugin.File.WriteFileEx(文件, "") Else //TracePrint 文件&" 存在" End If End Function Function 生成路径 检测文件夹(保存文件夹路径) 检测文件 (二级前缀路径) 检测文件 (二级域名路径) TracePrint "路径生成完毕" End Function Function 搜狗浏览器定位 '1.绑定推荐软件 浏览器 = Plugin.Window.Find( "SE_SogouExplorerFrame",0) '2.激活、还原、最大化浏览器 Call Plugin.Window.Active(浏览器) Delay 300 Call Plugin.Window.Restore(浏览器) Delay 300 Call Plugin.Window.Max(浏览器) Delay 300 '3.下面这句是得到窗口句柄的客户区大小 sRect = Plugin.Window.GetClientRect(浏览器) Delay 300 dim MyArray MyArray = Split(sRect, "|") L = Clng(MyArray(0)): T = Clng(MyArray(1)) R = Clng(MyArray(2)) : B = Clng(MyArray(3)) Delay 500 '4.搜狗浏览器地址栏 鼠标按下位置X = L + 240 鼠标按下位置Y = T + 35 End Function Function 浏览器打开成功验证 i=0 If i < 5 Then '通过坐标颜色识别网页是否成功打开 IfColor 596, 299, "FC823F", 0 Then i = 5 Else '循环四次打不开则重新打开 If i = 4 Then Call 搜狗浏览器定位 Call 输入操作地址 End If Delay 5000 i = i + 1 End If End If End Function Function 输入操作地址 '1.1点击站点管理 MoveTo 鼠标按下位置X, 鼠标按下位置Y Delay 300 LeftClick 1 Delay 1000 '1.2输入地址 操作链接 ="https://ziyuan.baidu.com/site/batchadd?mainsite=http://www." + 域名 SayString 操作链接 Delay 300 KeyPress "Enter", 1 Delay 1000 End Function Function 随机字符串(位数) Dim i,位置,字符串,字母 字母="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" 字符串="" For i=0 To 位数 - 1 位置 = Int((Len(字母) * Rnd()) + 1) 字符串 = 字符串 & Mid(字母,位置,1) Next 随机字符串 = 字符串 End Function 生成路径 Call 搜狗浏览器定位 Function 生成1个二级域名 二级前缀 = 随机字符串(8) 二级域名 = 二级前缀 + "." + 域名 Call Plugin.File.WriteFileEx(二级前缀路径,二级前缀) Call Plugin.File.WriteFileEx(二级域名路径,二级域名) End Function Function 发送10个二级域名 For 10 生成1个二级域名 SayString 二级域名 Delay 100 KeyPress "Enter", 1 Delay 100 Next End Function Function 识别是否有重复 IfColor 603, 480, "CF", 0 Then FindColorEx 720,400,900,960,"FC823F",0,0.9,忽略错误X坐标,忽略错误Y坐标 //以下是条件判断;如果返回的坐标大于0,那么就说明找到了。 If 忽略错误X坐标 > 0 And 忽略错误Y坐标 > 0 Then //如果出现错误则忽略 MoveTo 忽略错误X坐标, 忽略错误Y坐标 Delay 300 LeftClick 1 TracePrint 当前时间 + "点击忽略错误" Delay 5000 End If Else '网络延迟,没有错误 Delay 100 End If End Function 开始运行时间 = 当前时间 //循环写入 For 100 TracePrint 当前时间 + "操作" Call 输入操作地址 Call 浏览器打开成功验证 //点击进入输入框 MoveTo 695, 542 Delay 300 LeftClick 1 Delay 1000 发送10个二级域名 //点击添加网站 MoveTo 672, 730 Delay 300 LeftClick 1 Delay 1000 //点击确定 MoveTo 869, 645 Delay 300 LeftClick 1 Delay 3000 TracePrint 当前时间 + "确定添加" //判断是否添加成功 IfColor 604, 227, "333333", 0 Then //添加成功,执行下一步 TracePrint 当前时间 + "添加成功" Delay 500 Else Delay 5000 识别是否有重复 Delay 5000 End If Next 结束运行时间 = 当前时间 TracePrint "========================================================" TracePrint "开始运行时间" + 开始运行时间 TracePrint "结束运行时间" + 结束运行时间
存在的问题
子站点确定提交之后,有时会卡住,需要足够的时间让它慢慢上传。
可以使用ctrl+n新建标签页,新建一个上传子站点的页面,然后再运用第一个版本中的最后一个方法,关闭所有页面。