12. Генератор заголовков-приманок.
Условие:
Нашему сайту нужно как-то заманивать людей смотреть рекламу!
Но придумать интересный и оригинальный контент непросто. К счастью, с помощью генератора заголовков-приманок компьютер сможет создать миллионы шокирующих фиктивных заголовков.
Конечно их качество очень низкое.
Данная программа генерирует любое нужное количество заголовков.
Код:
import random, bext
def generateYouWontBelieveHeadline():
state = random.choice(STATES)
noun = random.choice(NOUNS)
pronoun = random.choice(OBJECT_PRONOUNS)
place = random.choice(PLACES)
return f'Ты не поверишь, что в {state} {noun} нашли в {pronoun} {place}.'
def generateBigCompaniesHateHerHeadline():
pronoun = random.choice(OBJECT_PRONOUNS)
state = random.choice(STATES)
noun = random.choice(NOUNS)
return f'Крупные компании ненавидят {pronoun}! Смотри как это делают {noun} в {state}.'
def generateWhatYouDontKnowHeadline():
noun = random.choice(NOUNS)
pluralNoun = random.choice(NOUNS)
when = random.choice(WHEN)
return f'Без этого {noun} и {pluralNoun} убьют тебя {when}.'
def generateAreMillenialsKillingHeadline():
noun = random.choice(NOUNS)
return f'Убивают ли миллениалы {noun} индустрию?'
def main():
bext.clear()
print('Наш веб-сайт должен заставлять людей смотреть рекламу обманом!')
print()
while True:
response = input('Введите количество заголовков для кликбейта, которые необходимо сгенерировать: ')
print()
if not response.isdecimal():
print('Вы ввели не цифры.')
else:
numberOfHeadlines = int(response)
break
for i in range(numberOfHeadlines):
clickbaitType = random.randint(1, 4)
if clickbaitType == 1:
headline = generateAreMillenialsKillingHeadline()
elif clickbaitType == 2:
headline = generateWhatYouDontKnowHeadline()
elif clickbaitType == 3:
headline = generateBigCompaniesHateHerHeadline()
elif clickbaitType == 4:
headline = generateYouWontBelieveHeadline()
print(headline)
print()
OBJECT_PRONOUNS = ['её', 'его', 'их']
PERSONAL_PRONOUNS = ['Она', 'Он', 'Они']
STATES = ['Московской области', 'Чукотке', 'Ставропольском крае', 'Крыме', 'Владимирской области', 'Тульской области', 'Чеченской республике', 'Белгородской области', 'Республике Татарстан', 'Республике Коми']
NOUNS = ['спортсмен(ы)', 'клоун(ы)', 'доктор(а)', 'родитель(и)', 'кошка(и)', 'собака(и)', 'курица(ы)', 'робот(ы)', 'серийный(е) убийца(ы)', 'телефонный(е) экстрасенс(ы)']
PLACES = ['дом(е)', 'чердак(е)', 'банковской депозитной ячейке', 'школа(е)', 'подвал(е)', 'рабочем месте', 'магазине пончиков', 'бункер(е)']
WHEN = ['скоро', 'в этом году', 'сегодня позже', 'прямо сейчас', 'на следующей неделе']
if __name__ == '__main__':
main()