新浪博客群发脚本(取本地随机文章并过滤关键词)
新浪博客的发布软件是基于按键精灵编写的,这个脚本是半自动的。提取本地存储的txt来输出内容和内容的标题(就是说这个文随机txt文章的标题)。因为是半自动的,可以手动点选上传图片。
这个脚本是基于软件按键精灵编写的,主要可以看一下如何使用本地指定文件夹内的随机文章,提取它的标题,并过滤关键词
//运行网页按键精灵 ProcessID = Plugin.Web.Bind("WQM.exe") Delay 1000 If ProcessID=0 then MessageBox "网页按键精灵没有运行" EndScript End If Call Plugin.Web.Tips("脚本开始运行") Call Plugin.Web.SetSize(1024, 768) Call Plugin.Web.ScrollTo(0, 0) //程序说明 //↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘ ↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘↘ //本程序为新浪博客发布程序,由我的博客(www.noteet.com)&(www.semb2b.cn)原创首发 Call Plugin.Msg.Tips("配置内容") //███████请输入网站名称██████████ 网站 = "新浪博客" Randomize //--------------------调用文件取文件名函数------------------------- Function FindAllFiles(FolderPath) Dim AllFiles,fso,Folder,f,files AllFiles = "" Set fso = CreateObject("Scripting.FileSystemObject") Set Folder = fso.getfolder(FolderPath) Set files = Folder.files For Each f In files AllFiles = AllFiles & f.name & "," Next Set fso = Nothing FindAllFiles = Split(AllFiles, ",") End Function //----------------------------配置变量---------------------------- 文件根目录 = "C:\TXT\" 帐号密码目录 = 文件根目录 + "0.账号密码\" 特殊内容目录 = 文件根目录 + "2.内容其他相关\" 过滤词目录 = 文件根目录 + "3.过滤\" 本地图片目录 = 文件根目录 + "3.图片" 网络图片目录 = 文件根目录 + "2.内容_图片\" 发布记录 = 文件根目录 + "发布记录\" 发布记录txt = 发布记录 + "发布记录.txt" 返回网址txt = 发布记录 + "返回网址.txt" 临时文件目录 = 文件根目录 + "临时文件\" 临时内容txt = 临时文件目录 + "临时内容.txt" 临时标题txt = 临时文件目录 + "临时标题.txt" 已使用标题txt = 临时文件目录 + "已使用标题.txt" //↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ //--------------------清除IE历史文件------------------------- //Call Plugin.Web.ClearHistory() //Call Plugin.Web.ClearCookie() //打开网站输入密码 Call Plugin.Msg.Tips ("打开网站") Call Plugin.Web.Go("https://login.sina.com.cn/signup/signin.php?entry=blog&r=http%3A%2F%2Fi.blog.sina.com.cn&from=referer:http%3A%2F%2Fi.blog.sina.com.cn") //判断页面是否加载完毕 l = 0 While l < 3 Num=Plugin.Web.HtmlExists("tag:id:username") If Num > 0 Then l = 4 Else l = l + 1 Delay 2000 End If Delay 500 Wend //登录帐号密码 //a.分割帐号密码 帐号密码文件 = 帐号密码目录 + 网站+".txt" name = Plugin.File.ReadFileEx(帐号密码文件) arr = split(name, "|") //b.开始输入帐号密码 Call Plugin.Web.HtmlInput(arr(0), "id:username") Call Plugin.Web.HtmlInput(arr(1), "id:password") //c.点击登录 Call Plugin.Web.HtmlClick("tag:INPUT&value:登 录") Delay 500 //-------------------------------------调用本地文件并过滤 //【1】配置标题及内容 文件夹路径 = 文件根目录 + "4.特殊发布\新浪博客" FileEx = FindAllFiles(文件夹路径) If UBound(FileEx) > 0 Then 随机文件名 = FileEx(int(rnd * UBound(FileEx))) TXT路径 = 文件夹路径 + "\" + 随机文件名 标题 = 随机文件名 内容 = Plugin.File.ReadFileEx(TXT路径) ElseIf UBound(FileEx) < 0 Then SayString (Cstr("文件夹 < "+ 文件夹路径 +" > 内无特定文章!")) End If //【2】.写出标题及内容到临时文件 b Call Plugin.File.WriteFileEx(临时标题txt, 随机文件名) Call Plugin.File.WriteFileEx(临时内容txt, 内容) //【3】.移动已经发布的文章 发布后路径 = 文件夹路径 +"\已发布\"+随机文件名 Call Plugin.File.MoveFile(TXT路径, 发布后路径) /* //【4】.写入标题>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>〖过滤〗 //a.设置过滤词txt文件 需要过滤的文件标题 = Plugin.File.ReadFileEx(临时标题txt) 过滤词=过滤词目录+"超级过滤.txt" word = Plugin.File.ReadFileEx(过滤词) //b.每行一个分割过滤词txt文件 Dim keyword keyword = Split(word, "|") //c.开始过滤 If UBound(keyword)>=0 Then i = 0 For UBound(keyword) new临时标题txt = Replace(需要过滤的文件标题, keyword(i),"" ) i = i + 1 Next End If //d.删除原txt文件 Call Plugin.File.DeleteFile(临时标题txt) //e.新建分割好的txt文件 Call Plugin.File.WriteFileEx(临时标题txt, Replace(new临时标题txt, "|", vbcrlf)) //f.输出该txt文件 标题 = Plugin.File.ReadFileEx(临时标题txt) //标题 = Replace(标题, " ", vbcrlf) //g.删除修改好的txt文件 Call Plugin.File.DeleteFile(临时标题txt) */ //【5】.写入内容>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>〖过滤〗 //a.设置过滤词txt文件 需要过滤的文件内容 = Plugin.File.ReadFileEx(临时内容txt) 过滤词=过滤词目录+"简单过滤.txt" word = Plugin.File.ReadFileEx(过滤词) //b.每行一个分割过滤词txt文件 Dim keyword2 keyword2 = Split(word, "|") //c.开始过滤 If UBound(keyword2)>=0 Then i = 0 For UBound(keyword2) new临时内容txt = Replace(需要过滤的文件内容, keyword2(i),"" ) i = i + 1 Next End If //d.删除原txt文件 Call Plugin.File.DeleteFile(临时内容txt) //e.新建分割好的txt文件 Call Plugin.File.WriteFileEx(临时内容txt, Replace(new临时内容txt, "|", vbcrlf)) //f.输出该txt文件 内容 = Plugin.File.ReadFileEx(临时内容txt) //内容 = Replace(内容, " ", vbcrlf) //g.删除修改好的txt文件 Call Plugin.File.DeleteFile(临时内容txt) //---------------------------------------------------------------------------------------- Call Plugin.Msg.Tips ("打开网站") Call Plugin.Web.Go("http://control.blog.sina.com.cn/admin/article/article_add.php") //判断页面是否加载完毕 l = 0 While l < 3 Num=Plugin.Web.HtmlExists("id:articlePostBtn") If Num > 0 Then l = 4 Else l = l + 1 Delay 2000 End If Delay 500 Wend Delay 500 //输入标题 Plugin.Web.LeftClick 130, 100 Delay 500 Call Plugin.Web.SendString(标题) Delay 500 //输入内容 Plugin.Web.LeftClick 450, 290 Delay 300 Call Plugin.Web.SendString(Replace(内容, "|", vbcrlf))
上述代码由按键精灵编写,本人原创。
如需测试使用上文中脚本,请与站长联系!