Примерно месяц назад я опубликовал пост Вернулся невод с тиной морскою…, речь там шла о безумной идее сравнить частотные словари Википедии и Башорга. В комментах было много идей насчёт того, как это сделать правильно, а так же просьб распарсить другие сайты — Луркмор и конечно же Хабрахабр.
По ссылке частотные слова из комментариев Хабра, которые никогда не встречались в постах Хабра (осторожно, довольно много ненормативной лексики):
docs.google.com/file/d/0B-1U-yPHh8eSbk52bW84NXFyYm8/edit?usp=sharing
По ссылке частотные слова из комментариев Хабра, которые никогда не встречались в постах Хабра (осторожно, довольно много ненормативной лексики):
docs.google.com/file/d/0B-1U-yPHh8eSbk52bW84NXFyYm8/edit?usp=sharing
Ещё за недолгое время пребывания здесь, я не мог не заметить любовь здешних обитателей к созданию и употреблению «хабраслов», захотелось оценить масштабы явления.
Хабраслова (точнее словоформы, стеммингом не занимался) отсортированные по частоте употребления:
docs.google.com/file/d/0B-1U-yPHh8eST3l6M0tuZzVEOFE/edit?usp=sharing
Они же, но отсортированные в лексикографическом порядке:
docs.google.com/file/d/0B-1U-yPHh8eSaFVsYTdJaGtlQUU/edit?usp=sharing
Немного кода:
#этот велосипед я использую всегда для получения нужных мне кусков html-а def generic_get(soup,search_tag,condition): l=[] for e in soup.findAll(search_tag): d=dict(e.attrs) if condition(d): l.append(e) return l #получаем текст поста def get_post_text(main_soup): return generic_get(main_soup, "div", lambda d:d.get("class",[''])[0]=="post")[0].text #получаем текст всех комментов def get_comments_text(main_soup): return ' '.join([x.text for x in generic_get(main_soup, "div", lambda d:d.get("class",[''])[0]=="message")])
К примеру, для получения текста этого поста, нужно сделать следующее:
>>> import BeautifulSoup >>> import urllib >>> bs=BeautifulSoup(urllib.urlopen("http://habrahabr.ru/post/192670/")) >>> print get_post_text(bs)
И получим мы:
Да… пост, который цитирует себя целиком, включая цитирование себя, включая… и т.д. это было бы оригинально… Я читал, что одному духовному лицу удалось написать нечто подобное на могиле своей собаки, но я, пожалуй, пытаться не буду…
ссылка на оригинал статьи http://habrahabr.ru/post/192670/
Добавить комментарий