最近研究了一下ahk,果然好用。顺便写了个论坛自动回帖程序。今天把800积分卖了,赚了八元人民币。哈哈!
把部分源码放出来给大家看看,其中有部分是从网站搬来的,然后自己整合了一下。有很多人对我说,写那么多脚本才那么几块钱,其实不仅仅是钱的问题,我利用这个东西,能够这样自己发布回复,就可以推广我自己的网站了,属于小小的seo类软件哦,我的芭比娃娃网,就是利用它推广上去的,在百度搜索芭比娃娃排在前面了哦。加油,继续!
;--------------------------------------------以下为事件区域--------------------------------------------------;程序入口F6::SetTimer, AutoWrite,50000Return
AutoWrite:;第一步WinActivate, %maintitle%Sleep, 2000Send, {F5}Sleep, 2000Send, {END}MouseClick, left, 123, 441Sleep, 5000;获取打开页面的标题,这里一定要先确保打开了。所以延时久一点WinGetActiveTitle, title;这里做判断,如果title==title2 不留言,关闭 如果title!=tital2 留言,关闭 ,并且赋值title2 = titleif title = title2{IfWinNotActive,%title%{WinActivate, %title%}IfWinActive,%title%{WinWaitActive, %title%Sleep, 2000WinMaximize,%title%Sleep, 3000WinClose,%title% ;关闭留言页面WinActivate, %maintitle%WinMaximize,%maintitle%Sleep, 1000Send,{Home}}}else{IfWinNotActive,%title%{WinActivate, %title%}IfWinActive,%title%{WinWaitActive, %title%Sleep, 2000WinMaximize,%title%Sleep, 3000Send, {End}MouseClick, left, 229, 408Sleep, 3000;这里设计为变量,获取随机数Random, rand, 2, 13SendString( string%rand% )Sleep, 5000/* 这个在有的地方不支持,换成鼠标点击Send,{Ctrl Down}Send,{Enter}Send,{Ctrl Up}*/MouseClick, left, 247, 517Sleep, 3000WinClose,%title% ;关闭留言页面WinActivate, %maintitle%WinMaximize,%maintitle%Sleep, 1000Send,{Home}title2 := title}}Return
;测试函数F9::Random, rand, 1, 7SendString( string%rand% )Send,{Enter}Return
;测试计时函数F10::SetTimer, WriteString, 1000ReturnF11::SetTimer, WriteString, offReturn
WriteString:Random, rand, 1, 7SendString( string%rand% )Send,{Enter}return
;--------------------------------------------以下为辅助函数区域--------------------------------------------------;函数1;发送中文辅助函数SendString( string ){ Len := StrLen(string) ; 得到字符串的长度,注意一个中文字符的长度是2,即占2个字节 Keys := "" ; 将要发送的字符序列 Index := 1 ; 用于循环 Loop { IsUnicodeChar := false Code2 := 0 ; 字符2的ASCII码 Code1 := Asc( SubStr(string, Index, 1) ) ; 得到第一个字符的ASCII值 if(Code1 >= 129 && Code1 <= 254 && Index < Len) ; 判断是否中文字符的第一个字符 { Code2 := Asc( SubStr(string, Index+1, 1) ) ; 得到第二个字符的ASCII值 if(Code2 >= 64 && Code2 <= 254) ; 若条件成立则说明是中文字符 { IsUnicodeChar := true Code1 <<= 8 ; 第一个字符应放到高8位上 Code1 += Code2 ; 第二个字符放在低8位上 } ++Index } if( IsUnicodeChar ) Keys .= "{ASC " . Code1 . "}" else { Keys .= "{ASC 0" . Code1 . "}" ; 如果非中文字符,则需要前缀一个0 if( Code2 > 0 ) Keys .= "{ASC 0" . Code2 . "}" } ++Index if(Index > Len) Break } Send % Keys}
有这方面爱好的,可以一起讨论哦。顺便问一下。有谁对discut 7.0的自动发布有研究的,我用.net写的程序,总是因为formhash出问题,可能是哪个地方他做了转换,一直找不到,请大侠指教啊。我已经能在自己的discut 7.0上自己发布了。只是我自己屏蔽了formhash呵呵-最近我在家开了个网络公司,靖州网站建设,大家支持一下我啊!开头好难!
转载于:https://www.cnblogs.com/oxite/archive/2009/06/19/1506857.html