2016-10-01 3 views
1

Firefox, iMacros 및 js를 사용하고 있습니다.스크립트를 실행할 때 URL을 제외하십시오.

나는 URL 목록이있는 URLs.txt- 파일이 있습니다. Firefox에서는 Tab 1에 webpage open이 있습니다.이 웹 사이트에는 많은 URL이 포함되어 있습니다. 일부는 내 텍스트 파일에 있습니다. 내 텍스트 파일의 URL을 건너 뛰고 다음 탭에서 다른 URL을 각각 열어주는 간단한 스크립트를 만들려고합니다. 한 번에 10. 따라서 Tab 2-11은 텍스트 파일에없는 새로운 URL로 열어야합니다. 이 내 자바 스크립트이지만, 그것은 작동하지 않습니다

var macro; 
var ret; 

macro ="CODE:"; 
macro +="SET !DATASOURCE URLs.txt"+"\n" 
macro +="SET !ERRORIGNORE YES"+"\n"; 
macro +="TAG POS=1 TYPE=HTML ATTR=* EXTRACT=HTM"+"\n"; 
macro +="SET !DATASOURCE_LINE {{!LOOP}}"+"\n"; 

iimPlay(macro) 
var text=iimGetExtract(); 

if(text.search("00016")!=-1) { 
ret = iimPlay("donothing.iim"); 
    } 

    else if (ret != -101) { 
    ret = iimPlay("openURL.iim"); 
} 

openURL.iim 단순히 URL을 탭이 열리지 만이 스크립트에 결코 내 목록에 해당 URL을 건너 없습니다. 이 코드를 수정하는 데 도움이 필요합니다.

이 openURL.iim가 (처음 4 개의 탭에 대한) 모습입니다 :

VERSION BUILD=9030808 RECORDER=FX 
TAB T=1 
EVENT TYPE=CLICK SELECTOR="HTML>BODY>UL:nth-of-type(2)>LI>A" BUTTON=0 MODIFIERS="ctrl" 
EVENT TYPE=CLICK SELECTOR="HTML>BODY>UL:nth-of-type(2)>LI:nth-of-type(2)>A" BUTTON=0 MODIFIERS="ctrl" 
EVENT TYPE=CLICK SELECTOR="HTML>BODY>UL:nth-of-type(2)>LI:nth-of-type(3)>A" BUTTON=0 MODIFIERS="ctrl" 
EVENT TYPE=CLICK SELECTOR="HTML>BODY>UL:nth-of-type(2)>LI:nth-of-type(4)>A" BUTTON=0 MODIFIERS="ctrl" 
EVENT TYPE=CLICK SELECTOR="HTML>BODY>UL:nth-of-type(2)>LI:nth-of-type(5)>A" BUTTON=0 MODIFIERS="ctrl" 
.... 
+0

나는 지금 온라인 상태입니다. 제게 알려 주시기 바랍니다. – NoIdeaJoe

+0

스크립트가 완전히 다르게 보일 수 있습니다. 나는이 일을하는 데에만 관심이있다. 분명히 내 대본이 충분하지 않고 부분적으로 잘못되어있다. – NoIdeaJoe

+0

나는이 일을 끝내는 사람에게 좋은 기부를 할 것이다. 정말 필요합니다 – NoIdeaJoe

답변

0

내가 당신에게 단서를 제공 할 수 있습니다. 의이 같은 URL에 뭔가 목록으로 TXT 파일을 만들어 보자 :

"http://www.example1.com 
http://www.example2.com 
http://www.example3.com" 

에주의를 두 따옴표가 있다는 사실을 : 처음에이 목록의 끝에서. 당신의 목표 웹 사이트에이 코드를 테스트 둡니다

iimPlayCode (
    "SET !DATASOURCE URLs.txt" + "\n" + 
    "SET !EXTRACT {{!COL1}}" 
); 
var excLinks = iimGetExtract().split(/\s+/); 

var incLinks = []; 
for (i = 1; i <= window.document.querySelectorAll("HTML>BODY>UL:nth-of-type(2)>LI").length; i++) 
    if (excLinks.indexOf(window.document.querySelector("HTML>BODY>UL:nth-of-type(2)>LI:nth-of-type(" + i + ")>A").href) == -1) 
     incLinks.push(i); 

for (i = 0; i < Math.min(incLinks.length, 10); i++) 
    iimPlayCode('EVENT TYPE=CLICK SELECTOR="HTML>BODY>UL:nth-of-type(2)>LI:nth-of-type(' + incLinks[i] + ')>A" BUTTON=0 MODIFIERS="ctrl"'); 

: 같은
그래서 스크립트를 보일 수 있습니다.

+0

와우! 정말 고맙습니다. 당신은 엄청난 일을했습니다! 방금 이메일을 보냈습니다. 나는 이것에 몇 가지 더 많은 것을 추가하고 싶다. 한번 봐주세요. – NoIdeaJoe

관련 문제