国产午夜爽爽爽男女免费动漫AV-爽死你个放荡粗暴婬故事-欧美在线观看大屁股视频-免费 无码 国产在线观看观

內(nèi)容優(yōu)化

內(nèi)容優(yōu)化

Products

當(dāng)前位置:首頁(yè) > 內(nèi)容優(yōu)化 >

巧妙利用火車頭的C#腳本來(lái)將長(zhǎng)標(biāo)題縮短的代碼

96SEO 2025-04-28 15:23 165


站長(zhǎng)在利用火車頭采集文章時(shí),有時(shí)候采集的標(biāo)題,或組合的標(biāo)題,或AI生成的標(biāo)題太長(zhǎng),那么在處理長(zhǎng)標(biāo)題時(shí),我們可以僅僅通過(guò)用火車頭自帶的C#編寫一個(gè)函數(shù)腳本來(lái)縮短標(biāo)題就可以。常見(jiàn)的做法是限制標(biāo)題的長(zhǎng)度,邏輯就是讀取標(biāo)題的標(biāo)點(diǎn)符號(hào),來(lái)截取適當(dāng)?shù)拈L(zhǎng)度。

需要注意的是,老版本的火車頭采集器的C#版本比較低,編寫腳本時(shí)注意兼容性。

以下是兩個(gè)示例代碼,具體不同看開(kāi)頭的注釋:

示例一:

//火車頭標(biāo)題截取以逗號(hào)問(wèn)號(hào)標(biāo)點(diǎn)符號(hào)等,如果第一個(gè)符號(hào)不夠8個(gè)字,就截取第二個(gè)符號(hào)之前
using System;
using SpiderInterface;

class LocoyCode {
public string Run(string content,ResponseEntry response)
{
char[] delimiters = { ',', ',', '?', '?', '(', '(', ' ', ':', '「',':', '-', '_', '!', '!', '|', ' ' };
string output = GetFirstLongString(content,delimiters);
return string.IsNullOrEmpty(output) ? content : output;
}
public static string GetFirstLongString(string input, char[] delimiters)
{
string output = "";
int startIndex = 0;
bool firstDelimiter = true;
for (int i = 0; i < input.Length; i++)
{
if(Array.IndexOf(delimiters,input[i])!=-1)
{
if(i-startIndex>=8 || (!firstDelimiter && i-startIndex > 0))
{
output = input.Substring(0, i);
break;
}
firstDelimiter = false;
startIndex=i+1;
}
}
if(string.IsNullOrEmpty(output) && input.Length>=8){
output = input;
}
return output;
}
}

示例二:

//火車頭標(biāo)題截取以逗號(hào)問(wèn)號(hào)等,如果第一個(gè)符號(hào)不夠8個(gè)字,就截取第一個(gè)符號(hào)之后第二個(gè)符號(hào)之前的
using System;
using SpiderInterface;

class LocoyCode {
public string Run(string content,ResponseEntry response)
{
char[] delimiters = { ',', ',', '?', '?', '(', '(', ' ', ':', ':', '-', '「', '!', '!', ' ' };
string output = GetFirstLongString(content,delimiters);
return string.IsNullOrEmpty(output) ? content : output;
}
public static string GetFirstLongString(string input, char[] delimiters)
{
string output = "";
int startIndex = 0;
bool firstDelimiter = true;
for (int i = 0; i < input.Length; i++)
{
if(Array.IndexOf(delimiters,input[i])!=-1)
{
if(i-startIndex>=8 || !firstDelimiter)
{
output = input.Substring(startIndex, i - startIndex);
break;
}
firstDelimiter = false;
startIndex=i+1;
}
}
if(string.IsNullOrEmpty(output) && input.Length>=8){
output = input;
}
return output;
}
}

如果你需要更多關(guān)于火車頭腳本或插件方面的問(wèn)題,請(qǐng)給我們留言或聯(lián)系客服!


標(biāo)簽: 火車頭C#腳本

提交需求或反饋

Demand feedback