<!--
<?php
print <<<EOT
--> 
<table width='100%' cellspacing='1' cellpadding='3' class="tablewidth"  id="top_menu">
  <tr> 
    <td>[<a href="index.php?lfj=gather&job=list">采集參數列表</a>] [<a href="index.php?lfj=gather&job=add_title">手工添加新規則</a>] 
      [<a href="index.php?lfj=gather&job=addrulesql">導入新規則</a>] [<a href="http://bbs.php168.com/thread-bbs-fid-1055.html" target="_blank">下載新規則</a>] 
      [<a href="index.php?lfj=gather&job=edit_title&id=$id">修改標題參數</a>] [<a href="index.php?lfj=gather&job=edit_content&id=$id">修改內容參數</a>]</td>
  </tr>
</table>
<table width="100%" border="0" cellpadding="3" cellspacing="1" class="tablewidth">
  <form name="formse" id="formse" method="post" action="index.php?lfj=$lfj&action=$job&id=$id" >
    <tr class="head" bgcolor="#FFFFFF"> 
      <td colspan="2">&gt;&gt;內容采集規則設置</td>
    </tr>
    <tr bgcolor="#FFFFFF" align="center"> 
      <td colspan="2"> 
        <input type="radio" name="type" value="iframe" onclick="show_more('iframe')" $typedb[iframe]>
        類似奇虎/大旗框架對方網頁即可 
        <input type="radio" name="type" value="article" onclick="show_more('article')" $typedb[article]>
        內容采集<font color="#FF0000">(常用,請選擇)</font> 
        <input type="radio" name="type" value="file" onclick="show_more('file')" $typedb[file]>
        <font color="#666666">高級采集</font>(<font color="#0000FF">一般不用</font>)</td>
    </tr>
    <tr bgcolor="#FFFFFF"> 
      <td width="40%">是否過濾相同的標題而不采集:<br>
        (目的,防止采集重復文章)</td>
      <td width="60%"> 
        <input type="radio" name="gatherthesame" value="1" $gatherthesamedb[1]>
        是過濾 
        <input type="radio" name="gatherthesame" value="0" $gatherthesamedb[0]>
        不過濾</td>
    </tr>
  
    <tr bgcolor="#FFFFFF"  class="filetr" style="display:none;"> 
      <td width="40%"> 
        <p>截取頁面中的主要內容,在任何一個HTML頁面代碼中,主要內容前面出現的唯一字符串</p>
        <p>此操作需要分別查看其中兩個以上內容頁的html代碼才好做出比較分析,不查看分析html代碼沒法在右邊表單輸入內容</p>
      </td>
      <td width="60%"> 
        <textarea name="show_begin_code" cols="70" rows="7">$show_begin_code</textarea>
      </td>
    </tr>
    <tr bgcolor="#FFFFFF"  class="filetr" style="display:none;"> 
      <td width="40%">截取頁面中的主要內容,在任何一個HTML頁面代碼中,主要內容後面出現的唯一字符串,但此字符串沒在主要內容中出現過<br>
        一般情況填<font color="#FF0000">&lt;/td&gt;</font> <br>
        <br>
        此操作需要分別查看其中兩個以上內容頁的html代碼才好做出比較分析 ,不查看分析html代碼沒法在右邊表單輸入內容</td>
      <td width="60%"> 
        <textarea name="show_end_code" cols="70" rows="7">$show_end_code</textarea>
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="articletr">
      <td width="40%">自定義正則語法規則(<font color="#0000FF">即用通配符替換原文內容</font>):<br>
        第一步,打開查看任意一篇要采集的文章詳細內容頁HTML網頁源代碼.<br>
        第二步,查看網頁源代碼,找到文章內容,刪除他,用通配符<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{content=*}</font>替換,然後再把他前面與後面的一小段代碼也復制過來即可.<br>
        <br>
        <font color="#0000FF">簡單舉例(常用):</font>比如被采集的網站內容頁的html代碼如下<br>
        &lt;tr&gt;&lt;td&gt;<font color="#FF0000">文章內容部分</font>&lt;/td&gt;&lt;/tr&gt;&lt;table&gt; 
        <br>
        那麼右邊輸入<br>
        &lt;tr&gt;&lt;td&gt;<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{content=*}</font>&lt;/td&gt;&lt;/tr&gt;&lt;table&gt; 
        <br>
        <br>
        <font color="#FF0000">說明:</font>通配符的前後有一小段HTML代碼,是不可少的,目的是為了找規則,不需要太多,也不要太少,達到唯一性即可.<br>
        <br>
        <font color="#0000FF">復雜舉例(少用):</font>比如內容的html代碼如下<br>
        時間:<font color="#FF0000">2008-12-24 12:13</font>abc<font color="#9900FF">不相關內容</font>作者:<font color="#00FF00">張三</font>abc<font color="#0000FF">不相關內容</font>來源:<font color="#FF00FF">php168網站</font>abc<font color="#0000FF">不相關內容</font>&lt;tr&gt;&lt;td 
        class=&quot;asc&quot;&gt;<font color="#FF0000">文章內容部分</font>&lt;/td&gt;&lt;/tr&gt;&lt;table&gt; 
        <br>
        那麼右邊輸入<br>
        時間:<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{posttime=*}</font>abc<font color="#9900FF" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{*}</font>作者:<font color="#00FF00" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{author=*}</font>abc<font color="#0000FF" onClick="javascript:CopyText(this);">{*}</font>來源:<font color="#FF00FF" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{copyfrom=*}</font>abc<font color="#0000FF" onClick="javascript:CopyText(this);">{*}</font>&lt;tr&gt;&lt;td 
        class=&quot;asc&quot; &gt;<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{content=*}</font>&lt;/td&gt;&lt;/tr&gt;&lt;table&gt; 
        <br>
        注意︰除內容外，其它每個參數後面，一般都帶有{*}非相關內容的通配符,通配符前面都有一個固定的字符，不能缺少固定的字符，如abc<br>
        <span help=1> <br>
        必須要注意的是:<br>
        為何要取內容的html代碼如下<br>
        <div style="border:1px dotted #333;margin:4px;"> &lt;tr&gt;&lt;td&gt;<font color="#FF0000">文章內容部分</font>&lt;/td&gt;&lt;/tr&gt;<font color="#0000FF">&lt;table&gt; 
          </font><br>
          那麼右邊輸入<br>
          &lt;tr&gt;&lt;td&gt;<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{content=*}</font>&lt;/td&gt;&lt;/tr&gt;<font color="#0000FF">&lt;table&gt;</font></div>
        而不是 <br>
        <div style="border:1px dotted #333;margin:4px;"> &lt;tr&gt;&lt;td&gt;<font color="#FF0000">文章內容部分</font>&lt;/td&gt;&lt;/tr&gt;<br>
          那麼右邊輸入<br>
          &lt;tr&gt;&lt;td&gt;<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{content=*}</font>&lt;/td&gt;&lt;/tr&gt;</div>
        這個呢?<br>
        為什麼要多一段 <font color="#0000FF">&lt;table&gt;</font> 呢?其實少這一段也是可以的,但就有可能采集到其他內容,即是精確度不高.代碼多一點,精確度就高一點,但也不是越多越好.因為太多的話.有可能就采集不到了.<br>
        <br>
        <font color="#FF0000">注意:</font> 如果你采集的不僅僅是內容,還有其它作者、來源等參數,注意不能缺少{*},{*}代表非相關內容的通用代表符.</span> 
      </td>
      <td width="60%">
        <textarea name="content_rule" cols="80" rows="12">$content_rule</textarea>
      </td>
    </tr>
    <tr bgcolor="#EAEAEA" class="filetr" align="center"> 
      <td colspan="2"> 如果想盡可能的做到絕對精確,你設置以下的完畢後,請再點擊上方的[<font color="#FF0000">采集文章</font>]進行采集主內容設置</td>
    </tr>
    <tr bgcolor="#FFFFFF" class="filetr"> 
      <td width="40%">文件後綴名<br>
        采集圖片的話,請輸入<font color="#FF0000">jpg</font>或<font color="#FF0000">jpg|gif</font>,FLASH的話.請輸入<font color="#FF0000">swf</font><br>
      </td>
      <td width="60%"> 
        <input type="text" name="file_type" size="40" value="$file_type">
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="filetr"> 
      <td width="40%"> 文件地址開頭必須有的字符</td>
      <td width="60%"> 
        <input type="text" name="file_star_string" size="40" value="$file_star_string">
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="filetr"> 
      <td width="40%">適用于哪個系統:<br>
        文章系統的話寫article,其他可選參數為music,mv,photo,flash,down</td>
      <td width="60%"> 
        <input type="text" name="fixsystem" value="$fixsystem">
        留空,則為文章</td>
    </tr>
    <tr bgcolor="#FFFFFF" class="filetr"> 
      <td width="40%">文件url地址長度不能小于<br>
        <br>
      </td>
      <td width="60%"> 
        <input type="text" name="file_minleng" size="7" value="$file_minleng">
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="filetr"> 
      <td width="40%">文件不能小于多少字節<br>
        <br>
        最好留空,極影響效率</td>
      <td width="60%"> 
        <input type="text" name="file_minsize" size="10" value="$file_minsize">
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="filetr"> 
      <td width="40%">文件URL地址必須包含有的字符<br>
        <br>
        多個請換行 </td>
      <td width="60%"> 
        <textarea name="file_includeword" cols="70" rows="7">$file_includeword</textarea>
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="filetr"> 
      <td width="40%">文件URL地址不能包含有的字符<br>
        <br>
        <br>
        多個請換行</td>
      <td width="60%"> 
        <textarea name="file_noincludeword" cols="70" rows="7">$file_noincludeword</textarea>
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="filetr"> 
      <td width="40%">文件url分隔符<br>
        <br>
        一般是<font color="#FF0000">src=<br>
        </font>為了更準確的話,也可以再長一點 </td>
      <td width="60%"> 
        <textarea name="file_explode" cols="70" rows="7">$file_explode</textarea>
      </td>
    </tr>
    <tr bgcolor="#EEEEEE"   align="center"> 
      <td colspan="2"> 
        <input type="checkbox" name="suset" value="checkbox"  onClick="show_suset(0)">
        顯示不常用的高級設置(<font color="#0000FF">一般不用</font>)</td>
    </tr>
    <tr bgcolor="#FFFFFF" class="articletr_su"> 
      <td width="40%">要替換文章中的字符:<br>
        <br>
        目的,過濾不願意看到的文字<br>
        格式為<font color="#FF0000">舊字符|新字符 </font></td>
      <td width="60%"> 
        <textarea name="show_replace_word" cols="70" rows="7">$show_replace_word</textarea>
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="articletr_su"> 
      <td width="40%">多頁處理:默認首頁被替換的字符<br>
        (如留空,內容如有多頁將不采集直接跳過)<br>
        比如: <br>
        第一頁http://php168.com/1/index.html<br>
        第二頁http://php168.com/1/index_2.html<br>
        那麼右邊的表單填<font color="#FF0000">.html<br>
        </font>分析規則就是對比第一頁與第二頁的網址從左到右哪個字符出現不同,就把之後的字符復制出來</td>
      <td width="60%"> 
        <input type="text" name="show_firstpage" size="70" value="$show_firstpage">
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="articletr_su"> 
      <td width="40%">多頁處理:變動的頁去替換的字符<br>
        (留空,內容如有多頁將不采集直接跳過)<br>
        比如: <br>
        第一頁http://php168.com/1/index.html<br>
        第二頁http://php168.com/1/index_2.html<br>
        那麼右邊的表單填<font color="#FF0000">_[page].html<br>
        </font>分析規則就是對比第一頁與第二頁的網址從左到右哪個字符出現不同,就把第二頁之後的字符復制出來,並把變動的頁碼數字用[page]替換</td>
      <td width="60%"> 
        <input type="text" name="show_morepage" size="70" value="$show_morepage">
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="articletr_su"> 
      <td width="40%">多頁時.第二頁是否怪癖,<br>
        比如: <br>
        第一頁http://php168.com/1/index.html<br>
        第二頁http://php168.com/1/index_<font color="#FF0000">1</font>.html<br>
        此時屬于怪癖的,理論上應該是<br>
        第三頁http://php168.com/1/index_<font color="#FF0000">2</font>.html <br>
        所以右邊請選擇是,一般情況都是選否的 </td>
      <td width="60%"> 
        <input type="radio" name="show_spe2page" value="1" $show_spe2pagedb[1]>
        是 
        <input type="radio" name="show_spe2page" value="0" $show_spe2pagedb[0]>
        否 </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="articletr_su"> 
      <td width="40%">開頭PHP正則程序語法<br>
        <br>
        (適合處理采集比較怪僻的網站.不懂PHP程序的,請留空,否則會出現嚴重問題使得采集程序無法運行) </td>
      <td width="60%"> 
        <textarea name="show_begin_preg" cols="70" rows="7">$show_begin_preg</textarea>
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="articletr_su"> 
      <td width="40%">結尾PHP正則程序語法<br>
        <br>
        (適合處理采集比較怪僻的網站.不懂PHP程序的,請留空,否則會出現嚴重問題使得采集程序無法運行) </td>
      <td width="60%"> 
        <textarea name="show_end_preg" cols="70" rows="7">$show_end_preg</textarea>
      </td>
    </tr>
    <tr bgcolor="#FFFFFF" class="articletr_su"> 
      <td width="40%">采集文件結尾的PHP正則程序語法<br>
        <br>
        (適合處理采集比較怪僻的網站.不懂PHP程序的,請留空,否則會出現嚴重問題使得采集程序無法運行) </td>
      <td width="60%"> 
        <textarea name="show_endfile_preg" cols="70" rows="7">$show_endfile_preg</textarea>
      </td>
    </tr>
    <tr bgcolor="#FFFFFF"> 
      <td width="40%"> 
        <input type="hidden" name="testgather">
      </td>
      <td width="60%"> 
        <input type="button" name="Submit" value="提交" onclick="post(0)">
        <input type="button" name="Submit2" value="測試采集" onclick="post(1)">
      </td>
    </tr>
  </form>
</table>
<SCRIPT LANGUAGE="JavaScript">
<!--
function post(va){
	if(va==1){
		document.formse.target="_blank";
	}else{
		document.formse.target="";
	}
	document.formse.testgather.value=va
	document.formse.submit();
}


function show_more(va){
	var s=document.getElementsByTagName("tr");
	for(var i=0;i<s.length;i++){
		if( va=="article" ){
			if(s[i].className=='articletr'){
				s[i].style.display="";
			}
			if(s[i].className=='filetr'){
				s[i].style.display="none";
			}	
		}else if( va=="file" ){
			if(s[i].className=='articletr'){
				s[i].style.display="none";
			}
			if(s[i].className=='filetr'){
				s[i].style.display="";
			}	
		}else{
			if(s[i].className=='articletr'){
				s[i].style.display="none";
			}
			if(s[i].className=='filetr'){
				s[i].style.display="none";
			}
		}
	}
}
show_more('$type');

function show_suset(va){
	var s=document.getElementsByTagName("tr");
	for(var i=0;i<s.length;i++){
		if( document.formse.suset.checked==true ||va==1 ){
			if(s[i].className=='articletr_su'){
				s[i].style.display="";
			}	
		}else{
			if(s[i].className=='articletr_su'){
				s[i].style.display="none";
			}	
		}
	}
}
show_suset(0);
//-->
</SCRIPT>
<script language="Javascript">
function CopyText(obj) {
	ie = (document.all)? true:false
	if (ie){
		var rng = document.body.createTextRange();
		rng.moveToElementText(obj);
		rng.scrollIntoView();
		rng.select();
		rng.execCommand("Copy");
		rng.collapse(false);
		alert(obj.innerText+'被復制succeed');
	}
}
</script>
<!--
EOT;
?>
-->
<table width="100%" border="0" cellpadding="3" cellspacing="1" class="tablewidth">
     <tr class="head" bgcolor="#FFFFFF"> 
      <td colspan="2">幫助說明</td>
    </tr>
  <tr>
    <td>1.通配符說明︰內容通配符是<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{content=*}</font>,不相關內容通配符是<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{*}</font>,作者通配符是<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{author=*}</font>,來源通配符是<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{copyfrom=*}</font>,日期通配符是<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{posttime=*}</font>,瀏覽量通配符是<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{hits=*}</font><br>
      2.當你僅僅獲取內容時，是不需要用到“不相關內容”通配符的,否則是必須要用到“不相關內容”通配符的，不使用<font color="#FF0000" title="點擊即可實現復制" onClick="javascript:CopyText(this);">{*}</font>的話，基本上是采集不succeed。<br>
      3.針對于非文章模型的采集,你需要查看對應的自定義字段的英文字段名,即<font color="#0000FF">{自定義字段名=*}</font>即可,如字段名是abcd,那麼通配符是<font color="#FF0000">{abcd=*}</font><br>
      4.對于自定義模型,任何一個自定義字段,都是可以采集入庫的. <br>
      5.采集器的原理就是查看網頁源代碼,找到要采集的字符串用通配符替換.如果要采集的不僅僅是文章內容的話,也即要采集兩項以上的話,就必須要使用“不相關內容通配符”，但是采集字段的通配符後面或前面不能直接是{*}，必須要有其它至少一個以上的HTML代碼隔開</td>
  </tr>
</table>
