Discuz論壇短信羣發、動網自動發貼源代碼

打開模擬精靈 ,把下面的代碼保存爲fap文件,雙擊運行即可。
或者複製到“源碼編輯器”中,點擊“編譯生成模擬程序”即可。

Discuz論壇短信羣發源代碼
---------------------------------------------------

<?xml version="1.0" encoding="gb2312" ?>
<ApeML LID="CHS" MD="0" 抓屏模式="0" 名稱="Discuz論壇短信羣發" 作者="模擬精靈 2005" 信息窗口="true" 速度="10" 循環次數="0" 自定義屬性="最大ID = 78114,論壇地址=http://bbs.******.com/,用戶名=aaaaa,密碼=bbbbbbbb,標題=驚人發現,間隔秒數 = 31">
<!--創建時間:2006年05月05日-22:36-->
<腳本區塊 語言="LAScript" 名稱="短信羣發" 延時="0" 啓用="true" 編輯密鑰="" 運行公鑰="">
<![CDATA[

--請在這裏設置要發送的短信內容
_text = [[給您介紹一個最新的免費綠色超強大的模擬軟件
官方網站http://www.yhhe.net/ape/

您收到的消息由軟件自動發送,
您可以在幾分鐘內做出類似的程序。]]

--讀取所有用戶設置

_set = ape:loadSetting();
_bbs = _set["論壇地址"]
_user = _set["用戶名"]
_pw = _set["密碼"]
_ts = tonumber( _set["間隔秒數"] );
_maxid = tonumber( _set["最大ID"] );
_title = _set["標題"]

-- 打開登錄頁面
wb = web(_bbs.."logging.php?action=login");

-- 如果要隱藏窗口工作,去掉下面這一句
wb:show(true);

ele = wb:getEle("username");
ele:setAttribute("value",_user);

ele = wb:getEle("password");
ele:setAttribute("value",_pw);

--點擊登錄按鍵 這裏用 ele:submit() 會失敗
ele = wb:getEle("loginsubmit");
ele:click()

--等待登錄完成並轉向index.php首頁
wb:wait("index.php");


for i=_maxid,1,-1 do
win.messagePrint("當前ID:"..i)
wb:go(_bbs.."pm.php?action=send&uid="..i);
wb:wait("");

ele = wb:getEle("subject");
if(not ele)then --如果掉線了,就可以找不到這個節點,退出當前循環並重新登錄
_set["最大ID"] = i; -- 保存最後一次發送的用戶ID
break; --中斷for循環
end;

ele:setAttribute("value",_title);
element.del(ele);--釋放節點,這句可省略

ele = wb:getEle("message");
ele:setTextin(_text);
element.del(ele); --釋放節點,這句可省略

ele = wb:getEle("pmsubmit");
ele:click();
ele = nil;--web頁已改變已經自動del,這裏只要賦值爲nil即可,這句可省略

delay(_ts * 1000);
if( not nStop() ) then --如果用戶按了停止
_set["最大ID"] = i; -- 保存最後一次發送的用戶ID
break; --中斷for循環
end;
end;

-- 保存最後一次發送的用戶ID
ape:saveSetting(_set);

]]>
</腳本區塊>
<數據區塊 />
</ApeML>


動網自動發貼源代碼
---------------------------------------------------

下面是一個簡單的例子,演示通過wb:go自動post發貼(不需要頁面提交)。
關於這個函數的用法可以參考貼子:http://www.yhhe.net/bbs/dispbbs.asp?boardID=4&ID=2427&page=1

<?xml version="1.0" encoding="gb2312" ?>
<ApeML LID="CHS" MD="0" 抓屏模式="0" 名稱="動網自動發貼" 作者="模擬精靈 2005" 信息窗口="true" 速度="10" 循環次數="1" 自定義屬性="用戶選項=0">
<!--創建時間:2006年05月04日-10:51-->
<腳本區塊 語言="LAScript" 名稱="init" 延時="0" 啓用="true" 編輯密鑰="" 運行公鑰="">
<![CDATA[

--在這裏設置發貼參數

_site = "http://www.****.com/bbs ";
_username="測試用戶名";
_body = "自動發的貼子";
_topic = "模擬精靈發貼測試";
_passwd ="1111111111111111111";

-- setDL函數可能用到的常量

_DLCTL_VIDEOS = 0x00000020 --視頻
_DLCTL_NO_RUNACTIVEXCTLS = 0x00000200 --禁止運行ActiveX 控件
_DLCTL_NOFRAMES = 0x00080000 --禁用框架
_DLCTL_NO_SCRIPTS = 0x00000080 --禁用腳本

--創建web窗體
wb2 = web.new(_site.."/login.asp");

--讀取用戶名輸入框
ele = wb2:getEle("username");
--輸入用戶名
ele:setAttribute("value",_username);
--讀取密碼輸入框
ele = wb2:getEle("password");
--輸入密碼
ele:setAttribute("value",_passwd);

web.show(wb2,true)
win.messagePrint("請登錄論壇......")
--等待登錄
wb2:wait("action=chk");

--wb2:setDL(_DLCTL_VIDEOS |_DLCTL_NO_RUNACTIVEXCTLS |_DLCTL_NOFRAMES |_DLCTL_NO_SCRIPTS);
wb2:setSilent(true,true,true,true)

win.messagePrint("正在發貼.......")
--這裏用的是wb2:go函數自動post,不需要頁面提交的方式。
wb2:go(_site.."/SavePost.asp?Action=snew&boardid=4","_self","Referer: ".._site.."/post.asp?action=new&boardid=4/r/nContent-Type: application/x-www-form-urlencoded","upfilerename=&Body=".._body.."&dvbbs=DvForum&star=1&page=1&TotalUseTable=dv_bbs1&username=".._username.."&passwd=**********&font=&topic=".._topic.."&Expression=face1.gif&autofix=1&GetPostType=&ToMoney=&Buy_Orders=-1&Buy_VIPType=0&Buy_UserList=&signflag=yes&emailflag=0")
wb2:wait("")

win.messagePrint("發貼完成")

]]>

 

*******************************************

 

 

 

 

發佈了5 篇原創文章 · 獲贊 3 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章