Advertisement
Guest User

history_bot

a guest
Mar 29th, 2020
140
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 10.83 KB | None | 0 0
  1. import vk_api
  2. import random
  3. import time
  4. token = "98be541c3f918a545e6990ac4bc8412de66be07fb59f4b256b590313bdcc189fe2aecadb8da1c66784ef7"
  5.  
  6. dates = dict()
  7. dates['476'] = 'падение Западной Римской империи'
  8. dates['486'] = 'возникновение государства франков'
  9. dates['527−565'] = 'правление Юстиниана в Византийской империи '
  10. dates['610'] = 'возникновение ислама 632 г. − возникновение государства у арабов '
  11. dates['800'] = 'провозглашение Карла Великого императором '
  12. dates['843'] = 'распад Франкской империи '
  13. dates['962'] = 'образование Священной Римской империи'
  14. dates['1054'] = 'разделение христианской церкви на Восточную (православную) и Западную (католическую)'
  15. dates['1066'] = 'нормандское завоевание Англии (битва при Гастингсе) '
  16. dates['1096'] = 'первая половина 1270-х гг. /1291 г. / начало XIV вв. (разные версии окончания эпохи) − Крестовые походы'
  17. dates['1204'] = 'захват Константинополя крестоносцами '
  18. dates['1215'] = 'принятие Великой хартии вольности в Англии'
  19. dates['1265'] = 'возникновение Английского парламента'
  20. dates['1302'] = 'созыв Генеральных штатов во Франции'
  21. dates['1337−1453'] = 'Столетняя война 1358 г. − Жакерия во Франции'
  22. dates['1381'] = 'восстание под предводительством У. Тайлера в Англии'
  23. dates['1389'] = 'битва на Косовом поле'
  24. dates['1419−1434'] = 'Гуситские войны'
  25. dates['1440'] = 'изобретение книгопечатания И. Гуттенбергом'
  26. dates['1455−1485'] = 'война Алой и Белой розы в Англии '
  27. dates['1461−1483'] = 'правление Людовика XI во Франции'
  28. dates['1453'] = 'падение Византийской империи'
  29. dates['1485−1509'] = 'правление Генриха VII в Англии'
  30. dates['1492'] = 'открытие Америки Христофором Колумбом'
  31. dates['1492 '] = 'завершение Реконкисты на Пиренейском полуострове'
  32. dates['860'] = 'Объединенный морской поход Днепровских славян и варягов на Константинополь (Царьград) '
  33. dates['862–879'] = 'Княжение Рюрика в Новгороде'
  34. dates['862–882'] = 'Правление в Киеве князей Аскольда и Дира '
  35. dates['882–912'] = 'Княжение Олега в Киеве '
  36. dates['907'] = 'Поход Олега на Константинополь. Первый договор Руси с Византией о дружественных отношениях, нормах международной торговли и мореплавания '
  37. dates['911'] = 'Второй договор Руси с Византией '
  38. dates['912–945'] = 'Княжение Игоря в Киеве '
  39. dates['941'] = 'Первый поход князя Игоря на Константинополь, закончившийся провалом '
  40. dates['944'] = 'Второй поход князя Игоря на Константинополь. Договор Руси с Византией. (Русь теряла право беспошлинной торговли и обязывалась оказывать помощь в охране пограничных с нею владений Византии)'
  41. dates['945–969'] = 'Правление Ольги в Киеве (после убийства древлянами ее мужа князя Игоря)'
  42. dates['945–972'] = 'Княжение Святослава Игоревича в Киеве'
  43. dates['965'] = 'Разгром князем Святославом Хазарского каганата (на нижней Волге). Установление контроля над торговым путем Волга – Каспийское море. '
  44. dates['968–971'] = 'Походы князя Святослава в Дунайскую Болгарию. Войны с Византией и печенегами'
  45. dates['968'] = 'Разгром печенегов под Киевом '
  46. dates['971'] = 'Договор Руси с Византией'
  47. dates['972–980'] = 'Междоусобицы в Киеве после убийства печенегами князя Святослава '
  48. dates['980–1015'] = 'Княжение Владимира I Святославича в Киеве '
  49. dates['980'] = 'Создание единого пантеона языческих богов в Киеве '
  50. dates['985'] = 'Поход князя Владимира на волжских булгар '
  51. dates['988'] = 'Крещение Руси '
  52. dates['1015–1019'] = 'Междоусобные войны сыновей Владимира I за великокняжеский престол'
  53. dates['1019–1054'] = 'Княжение Ярослава Владимировича Мудрого в Киеве. Составление свода законов «Правда Ярослава» — наиболее древней части «Русской правды»'
  54. dates['1024'] = '1) Восстание в Ростово-Суздальской земле; подавлено князем Ярославом, 2) Раздел Руси между Ярославом Мудрым и его братом Мстиславом по Днепру: Правобережье (с Киевом) отходило к Ярославу, Левобережье (с Черниговом) – к Мстиславу'
  55. dates['1030–1035'] = 'Строительство Спасо-Преображенского собора в Чернигове '
  56. dates['1036'] = 'Победа князя Ярослава Мудрого над печенегами, обеспечившая Руси мир на четверть века (до прихода в Степь половцев) '
  57. dates['1037–1041'] = 'Строительство Софийского Собора в Киеве '
  58. dates['1043'] = 'Последний поход Руси (во главе с сыном Ярослава Мудрого князем Владимиром Ярославичем Новгородским) на Константинополь; завершился неудачей '
  59. dates['1045–1050'] = 'Строительство Софийского Собора в Новгороде '
  60. dates['1051'] = 'Поставление князем Ярославом Мудрым автора «Слова о Законе и Благодати» Иллариона (первого из русских) на митрополичью кафедру в Киеве. Основание отшельником Антонием Печорской обители в Киеве '
  61. dates['1054'] = 'Великое княжение в Киеве Изяслава Ярославича. Составление «Правды Ярославичей» — второй части «Русской правды»'
  62. dates['1068'] = 'Набег половцев на Русь. Поход русских князей (Ярославичей) на половцев; поражение на р. Альта. Восстание горожан в Киеве. Бегство Изяслава в Польшу. '
  63. dates['1072'] = 'Перенесение в новую церковь г. Вышгорода мощей князя Бориса и Глеба (сыновей князя Владимира I), убитых сторонниками Святополка, ставших первыми русскими святыми '
  64. dates['1073'] = 'Изгнание князя Изяслава из Киева'
  65. dates['1073–1076'] = 'Великое княжение в Киеве Святослава Ярославича '
  66. dates['1078–1093'] = 'Великое княжение в Киеве Всеволода Ярославича '
  67. dates['1093–1113'] = ' Великое княжение в Киеве Святополка Изяславича '
  68. dates['1093'] = 'Поражение князей Святополка и Владимира Всеволодовича Мономаха в битве с половцами на р. Стугна'
  69. dates['1096'] = 'Победа князя Святополка над половцами в битве под Переяславлем.'
  70. dates['1097'] = 'Съезд князей в г. Любече'
  71. dates[''] = ''
  72. dates[''] = ''
  73. dates[''] = ''
  74. dates[''] = ''
  75. dates[''] = ''
  76. dates[''] = ''
  77. dates[''] = ''
  78. dates[''] = ''
  79. dates[''] = ''
  80.  
  81.  
  82. vk = vk_api.VkApi(token=token)
  83.  
  84. vk._auth_token()
  85.  
  86. while True:
  87.     try:
  88.         messages = vk.method("messages.getConversations", {"offset": 0, "count": 20, "filter": "unanswered"})
  89.         if messages["count"] >= 1:
  90.             id = messages["items"][0]["last_message"]["from_id"]
  91.             body = messages["items"][0]["last_message"]["text"]
  92.  
  93.  
  94.             if body.lower() == "начать" or body.lower() == "привет"  or body.lower() == 'да' or body.lower() == 'ок':
  95.                 vk.method("messages.send", {"peer_id": id, "message": 'Привет, введи дату, событие/я которой вы хотите узнать.', "random_id": random.randint(1, 2147483647)})
  96.             if body.lower() in dates:
  97.                 vk.method("messages.send", {"peer_id": id, "message": dates[body.lower()], "random_id": random.randint(1, 2147483647)})
  98.                 vk.method("messages.send", {"peer_id": id, "message": 'Хочешь узнать событие ещё какой-нибудь даты?', "random_id": random.randint(1, 2147483647)})
  99.             if body.lower() == 'нет':
  100.                 vk.method("messages.send", {"peer_id": id, "message": 'Ладно, до встречи)', "random_id": random.randint(1, 2147483647)})
  101.             if body.lower() != 'привет' and body.lower() != "начать"  and body.lower() != 'да' and  body.lower() != 'нет' and body.lower() != 'ок' and body.lower() not in dates:
  102.                 vk.method("messages.send", {"peer_id": id, "message": 'Дата не найдена.', "random_id": random.randint(1, 2147483647)})
  103.                 vk.method("messages.send", {"peer_id": id, "message": 'Хочешь узнать событие ещё какой-нибудь даты?', "random_id": random.randint(1, 2147483647)})
  104.                
  105.     except Exception as E:
  106.         time.sleep(1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement