Например, команда
$python3 dictobructo.py Путин 5 30
заставит скрипт искать твиты, в которых встречается слово «Путин» и выбрать из них слова, которые имеют длину не менее 5 букв и встречаются минимум 30 раз. В результате будет создан файл «путин.dic» с примерно следующим содержанием:
мирное (280)
премьер (39)
владимир (314)
нетаньяху (234)
новости (35)
насилия (36)
президент (245)
конфликте (32)
эскалации (34)
израиль (114)
призвал (466)
В скобках — количество повторении. В принципе, вещь бессмысленная, но забавная. Можно, так сказать, положить палец на пульс
![](/static/djangobb_forum/img/smilies/smile.png)
Собственно, сам код.
# ~-Open source for fun-~ # -------------------------------------- # DictoBructo by alekz.polyakov@gmail.com # http://scriptocide.blogspot.com # -------------------------------------- # #!/usr/bin/python3 # -*- coding: utf-8 -*- from twitter import * from collections import * import requests, re, string req = str(sys.argv[1]).lower() length = sys.argv[2] freq = sys.argv[3] text = [] strip = string.whitespace + string.punctuation + string.digits ###### авторизация ######### def authoriz(): OAUTH_TOKEN = "_______" #вместо прочерков OAUTH_SECRET = "_______" #вставить свои данные CONSUMER_KEY = "_______" CONSUMER_SECRET = "____" t = Twitter(auth=OAuth(OAUTH_TOKEN, OAUTH_SECRET,CONSUMER_KEY, CONSUMER_SECRET)) ###### отправка запроса, получение,парсинг ответа и запись в файл ######### def get_n_parse(): for num in range(1,16): #количество страниц, которое хотим получить от сервера (15 страниц — ограничение Твиттера) result = requests.get("http://search.twitter.com/search.json?q=%s&page=%d&rpp=100" % (req, num)) for tweet in range(0, len(result.json['results'])): text.append(str(result.json['results'][tweet]['text'])) words = re.findall('w+', str(text).lower().strip(strip)) with open(req+'.dic', 'a') as f: for key, value in dict(Counter(words)).items(): if (value >= int(freq)) and (len(key)>=int(length)) and (key != req) and (key != 'http'): f.write(str(key)+' ' +'(' + str(value) + ')n') authoriz() print('Идёт поиск синонимов для слова "',req,'" длиной ', length,' букв и которые встречаются не менее ', freq,' раз.') get_n_parse() print('Синонимы подобраны и записаны в файл ' + req +'.dic')