当前位置: 首页 > 新闻动态 > 网络优化

巧妙利用火车头的C#脚本来将长标题缩短的代码,宿迁标准网站优化联系人

作者:网络 浏览: 发布日期:2025-04-28
[导读]:站长在利用火车头采集文章时,有时候采集的标题,或组合的标题,或AI生成的标题太长,那么在处理长标题时,我们可以仅仅通过用火车头自带的C#编写一个函数脚本来缩短标题就可以。常见的做法是限制标题的长度,逻辑就是读取标题的标点符号,来截取适当的长度。 需要注意的是,老版本的火车头采集器的C#版本比较低,编写脚本时注意兼容性。 以下是两个示例代码,具体不同看开头的注释: 示例一:

站长在利用火车头采集文章时,有时候采集的标题,或组合的标题,或AI生成的标题太长,那么在处理长标题时,我们可以仅仅通过用火车头自带的C#编写一个函数脚本来缩短标题就可以。常见的做法是限制标题的长度,逻辑就是读取标题的标点符号,来截取适当的长度。

需要注意的是,老版本的火车头采集器的C#版本比较低,编写脚本时注意兼容性。

以下是两个示例代码,具体不同看开头的注释:

示例一:

//火车头标题截取以逗号问号标点符号等,如果第一个符号不够8个字,就截取第二个符号之前
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;
}
}

示例二:

//火车头标题截取以逗号问号等,如果第一个符号不够8个字,就截取第一个符号之后第二个符号之前的
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;
}
}

如果你需要更多关于火车头脚本或插件方面的问题,请给我们留言或联系客服!


免责声明:转载请注明出处:http://m.lexweb.cn/news/752342.html

扫一扫高效沟通

多一份参考总有益处

免费领取网站策划SEO优化策划方案

请填写下方表单,我们会尽快与您联系
感谢您的咨询,我们会尽快给您回复!