2014-10-03 42 views
0

我想展開Facebook牆,然後在展開的牆上顯示所有評論。如何擁有iMacros腳本展開Facebook牆,然後展開所有評論

手動操作時,可通過訪問牆的鏈接並連續向下滾動,逐漸顯示更多頁面,直到顯示所有頁面爲止。然後,將選擇形式爲View * more comments的可選文本的每個實例,以使頁面中的所有註釋完全顯示。

我試圖有向下滾動的事件有沒有成功iMacros的註冊和我曾與下面的腳本選擇文本View 1 more comments基本成功:

VERSION BUILD=8820413 RECORDER=FX 
TAB T=1 
URL GOTO=https://www.facebook.com/FACEBOOKID1?and=FACEBOOKID2 
TAG POS={{!LOOP}} TYPE=SPAN ATTR=TXT:View<SP>1<SP>more<SP>comments 

我如何可以自動向下滾動行爲我目前如何擴大評論以更一般的方式行事?

回答

0

我用下面的JS腳本:

// set the number of scrolls you prefer 
var scrollNumber = 1; 
// scroll 
for (i = 1; i <= scrollNumber; i++) { 
    window.scrollTo(0, i*10000); 
    iimPlayCode("WAIT SECONDS=2"); 
} 
// expand comment boxes with 50 less comments 
var doc = window.document; 
var cmtBoxes = doc.getElementsByClassName("UFIBlingBox uiBlingBox feedbackBling"); 
for (i = 1; i <= cmtBoxes.length; i++) { 
    var cmtLabel = cmtBoxes[i - 1].getAttribute("aria-label"); 
    var cmtNumber = cmtLabel.match(/.*\s(\d+)\scomments.*/)[1]; 
    if (cmtNumber < 50) 
     iimPlayCode('TAG POS=' + i + ' TYPE=A ATTR=CLASS:"UFIBlingBox uiBlingBox feedbackBling"'); 
} 
// count 
var cmtPostNumber = 0; 
for (i = 0; i < doc.links.length; i++) { 
    if (doc.links[i].innerHTML.match(/View\s\d+\smore\scomment/) != null) 
     cmtPostNumber++; 
} 
// view 
for (i = 1; i <= cmtPostNumber; i++) { 
    var M = "SET !TIMEOUT_STEP 1" + "\n"; 
    M += "TAG POS=1 TYPE=A ATTR=TXT:View<SP>*<SP>more<SP>comment*" + "\n"; 
    M += "WAIT SECONDS=1"; 
    var ret = iimPlayCode(M); 
    if (ret != 1) break; 
} 
// go to the top 
window.scrollTo(0, 0);