初识狗屁不通文章生成器
Github原作者python版本
https://github.com/menzi11/BullshitGenerator
本项目为python3版本, 还有由suulnnka修改在线版, 使用更加方便: https://suulnnka.github.io/BullshitGenerator/index.html
效果图
Android项目地址
https://github.com/chongbinwei/BullshitGenerator-Android
核心代码方法,生成文章方法代码片
.
//生成文章
private void generate(String content){
article = content;
String paragraph = "";
articleContent = "";
int size = 0;
while (size<6000){
int ranNum = randomNum();
if (ranNum<50 && paragraph.length()>200){
paragraph =addParagraph(paragraph);
articleContent = articleContent +paragraph;
paragraph = "";
}else if (ranNum<20){
String sentence = getSaying();//来点名人名言
size = size+sentence.length();
paragraph = paragraph+sentence;
}else {
String sentence = getExpound();//来点论述
size = size+sentence.length();
paragraph = paragraph+sentence;
}
}
paragraph =addParagraph(paragraph);
articleContent = articleContent +paragraph;
tv_content.setText(articleContent);
}
//随机获取一条句子 传入列表
private String randomSentence(String[] list){
int num = (int) Math.floor( Math.random() * list.length );
return list[num];
}
//获取随机数
private int randomNum(){
int max =100;
int mix = 0;
int num = (int) (Math.random()*( max - mix ) + mix);
return num;
}
//修改名人名言
private String getSaying(){
String saying =randomSentence(sayings);
saying= saying.replace("曾经说过", randomSentence(fronts) );
saying= saying.replace("这不禁令我深思", randomSentence(behinds) );
return saying;
}
//修改论述
private String getExpound(){
String sentence =randomSentence(expound);
sentence= sentence.replace("主题", article);
return sentence;
}
//添加段落换行 句号
private String addParagraph(String paragraph){
int length = paragraph.length();
paragraph = paragraph.substring(0,length-2);
paragraph = " "+paragraph +"。 "+"\n";
return paragraph;
}