- PVSM.RU - https://www.pvsm.ru -

Рейтинг хабов и компаний по постам/подписчикам

На данный момент на хабре около 350 хабов [1]. Функционал сайта позволяет сортировать их по имени [2] и по индексу [1]. А по другим параметрам — например по количеству постов [3] — нет, а хотелось бы.

Меня вдохновила статья рейтинг постов хаба [4], и я решил сделать похожую, но составить уже рейтинг самих хабов.

В первой половине статьи я представлю вам рейтинги хабов и компаний, а также небольшой их анализ. А во второй — подробно распишу, как я на Java с помощью библиотеки JSoup [5] парсил HTML страницы хабры, с какими интересными явлениями и проблемами столкнулся. И в конце статьи выложу полный исходный код программы.

Рейтинг хабов и компаний по постам/подписчикам

Рейтинг хабов

По количеству постов

Чулан [6] 35 971
Я пиарюсь [7] 5 461
Веб-разработка [8] 4 011
Информационная безопасность [9] 3 385
Google [10] 2 770
Железо [11] 2 733
Гаджеты. Устройства для гиков [12] 2 375
Программирование [13] 2 293
Linux [14] 2 235
Android [15] 1 965
JavaScript [16] 1 687
Apple [17] 1 612
Хабрахабр [18] 1 568
.NET [19] 1 485
PHP [20] 1 465
Системное администрирование [21] 1 454
DIY или Сделай Сам [22] 1 442
Разработка [23] 1 331
Управление проектами [24] 1 261
Интерфейсы [25] 1 257
Microsoft [26] 1 237
Game Development [27] 1 218
Open source [28] 1 110
Смартфоны и коммуникаторы [29] 1 091
JAVA [30] 1 020
Дизайн в IT [31] 996
Алгоритмы [32] 991
Копирайт [33] 982
Социальные сети и сообщества [34] 949
GTD [35] 939
Windows [36] 919
Учебный процесс в IT [37] 916
Python [38] 866
Робототехника [39] 798
Разработка под Android [40] 783
Разработка под iOS [41] 777
Хостинг [42] 749
C++ [43] 711
Законодательство и IT-бизнес new [44] 677
Медиа [45] 664
Mobile Development [46] 664
Научно-популярное [47] 661
CSS [48] 658
Веб-дизайн [49] 653
Firefox [50] 629
Облачные вычисления [51] 608
Убунтариум [52] 597
Софт [53] 585
ИТ-Инфраструктура [54] 561
Opera [55] 561
Космонавтика [56] 538
Сетевые технологии [57] 518
Ненормальное программирование [58] 510
Peer-to-Peer [59] 495
*nix [60] 474
Тестирование [61] 472
Карьера в IT-индустрии [62] 471
Google Chrome [63] 468
Браузеры [64] 468
Операционные системы [65] 466
Обработка изображений [66] 458
Яндекс [67] 445
iPhone [68] 440
Высокая производительность [69] 438
История ИТ [70] 434
Ruby [71] 433
Искусственный интеллект [72] 423
jQuery [73] 414
Поисковые машины и технологии [74] 410
Планшеты [75] 392
Электроника для начинающих [76] 387
Windows Phone [77] 375
Виртуализация [78] 371
Анимация и 3D графика [79] 366
HTML [80] 365
Математика [81] 361
Платежные системы [82] 354
C# [83] 349
Работа с видео [84] 349
Энергия и элементы питания [85] 346
IP-телефония [86] 345
Twitter [87] 344
Блогосфера [88] 338
CMS [89] 333
Программинг микроконтроллеров [90] 332
Старое железо [91] 320
Криптография [92] 309
Node.JS [93] 308
Финансы в IT-индустрии [94] 305
Беспроводные технологии [95] 304
Qt Software [96] 303
IM [97] 300
Домены [98] 290
Фриланс [99] 290
Facebook [100] 284
Работа со звуком [101] 277
Игровые приставки [102] 276
Django [103] 271
Исследования и прогнозы в IT [104] 270
MySQL [105] 264
Ruby on Rails [106] 252
Краудсорсинг [107] 252
Mac OS X [108] 249
Adobe [109] 248
Типографика [110] 244
Электронное правительство [111] 243
Skype [112] 242
IT-стандарты [113] 242
Мобильный веб [114] 241
Flash-платформа [115] 240
Вирусы (и антивирусы) [116] 239
Статистика в IT [117] 239
Краудфандинг [118] 235
Бизнес студии [119] 233
Телефония [120] 231
Серверное администрирование [121] 231
Visual Studio [122] 229
Спортивное программирование [123] 229
Фототехника [124] 226
YouTube [125] 223
Arduino [126] 222
SQL [127] 218
Drupal [128] 216
Cisco [129] 213
Perl [130] 206
Data Mining [131] 203
Usability [132] 201
Электронные книги [133] 198
Проектирование и рефакторинг [134] 196
Сетевое оборудование [135] 188
Git [136] 184
WordPress [137] 184
Wikipedia [138] 180
Ноутбуки [139] 178
Спам (и антиспам) [140] 170
Киберпанк [141] 167
Офисы IT-компаний [142] 163
Разработка под Windows Phone [143] 161
Байнет [144] 161
Анализ и проектирование систем [145] 158
Биотехнологии [146] 157
NoSQL [147] 153
Amazon Web Services [148] 151
Патенты [149] 150
ASP [150] 150
Symfony [151] 149
Занимательные задачки [152] 149
Клиентская оптимизация [153] 148
Oracle [154] 146
Нетбуки [155] 146
Совершенный код [156] 145
Delphi [157] 143
Геоинформационные сервисы [158] 143
Silverlight [159] 139
Unity3D [160] 138
3D-принтеры [161] 138
Windows Azure [162] 138
PostgreSQL [163] 137
Zend Framework [164] 136
Coworking: работа 2.0 [165] 133
Веб-аналитика [166] 132
Серверная оптимизация [167] 131
Agile [168] 131
Nginx [169] 128
Системное программирование [170] 126
API [171] 125
Yii [172] 122
ERP-системы [173] 120
Haskell [174] 118
Asterisk [175] 118
3G [176] 116
Системы управления версиями [177] 116
Инфографика [178] 114
Процессоры [179] 112
MODX [180] 111
Internet Explorer [181] 110
Big Data [182] 108
Хабрахабр — Анонсы [183] 106
Assembler [184] 106
Mozilla [185] 106
C [186] 104
Дополненная реальность [187] 103
GPS [188] 100
VIM [189] 100
ECM/СЭД [190] 97
Накопители [191] 96
Google App Engine [192] 96
Objective C [193] 94
Администрирование баз данных [194] 93
Презентации [195] 93
Восстановление данных [196] 91
Ajax [197] 91
Gmail [198] 90
Microsoft SQL Server [199] 89
Иконосказ [200] 89
Erlang/OTP [201] 87
SharePoint [202] 87
Yahoo [203] 87
LTE [204] 86
PowerShell [205] 86
OpenStreetMap [206] 85
Mail.Ru [207] 84
Векторная графика [208] 83
IT-Биографии [209] 82
Bitcoin [210] 81
Canvas [211] 81
LiveJournal [212] 80
Функциональное программирование [213] 79
Библиотека ExtJS/Sencha [214] 79
BlackBerry [215] 79
ВКонтакте [216] 78
ООП [217] 77
Биоинформатика [218] 75
Компиляторы [219] 74
TDD [220] 73
Оценка и экспертиза IT-проектов [221] 70
Creative Commons [222] 70
Параллельное программирование [223] 67
IPv6 new [224] 67
Графические оболочки [225] 67
WiMAX [226] 66
Семантическая Сеть [227] 63
AngularJS [228] 63
Видео-техника [229] 62
IPTV [230] 62
Scala [231] 59
SaaS / S+S [232] 59
iPad [233] 59
Радиосвязь [234] 59
CodeIgniter [235] 57
SmartTV [236] 54
Микроформаты [237] 54
Maps API [238] 54
Kohana [239] 53
ГЛОНАСС [240] 52
Открытые данные [241] 52
Нанотехнологии [242] 51
Go [243] 50
CAD/CAM [244] 50
GreaseMonkey [245] 50
Рамблер [246] 48
КодоБред [247] 48
Lisp [248] 47
Демосцена [249] 47
Регулярные выражения [250] 47
Google API [251] 46
Mono и Moonlight [252] 46
INFOLUST [253] 45
Eclipse [254] 44
Периферия [255] 43
Emacs [256] 43
Моддинг [257] 42
Wiki-технология [258] 42
Настольные компьютеры [259] 41
Яндекс API [260] 41
Мониторы и ТВ [261] 39
Отладка [262] 39
MongoDB [263] 39
Вконтакте API [264] 39
LiveStreet [265] 39
Sony PlayStation [266] 38
LaTeX [267] 38
Хабрахабр API [268] 38
Fidonet [269] 36
Sphinx [270] 36
GPGPU [271] 35
Accessibility [272] 35
Groovy & Grails [273] 35
XSLT [274] 35
Разработка под Java ME [275] 34
Apache [276] 34
DNS [277] 34
SQLite [278] 34
Tizen [279] 33
Safari [280] 32
1С-Битрикс [281] 31
Amazon Kindle [282] 31
CRM-системы [283] 31
Умный дом [284] 30
Microsoft Kinect [285] 29
R [286] 28
Bing [287] 27
Бегун [288] 27
Медиаплееры [289] 27
CakePHP [290] 26
Google Web Toolkit [291] 25
Google Analytics [292] 24
XML [293] 24
Action Script [294] 23
UML Design [295] 23
Оболочки [296] 23
Lua [297] 22
Суп [298] 22
MooTools [299] 22
Brainfuck [300] 21
Google Plus [301] 18
Doctrine ORM [302] 18
Mercurial [303] 18
Видеокарты [304] 17
Facebook API [305] 17
Meteor.JS new [306] 16
Prolog [307] 16
Системы охлаждения [308] 16
PDF [309] 15
Визуализация данных [310] 15
Sun Microsystems [311] 15
Derby.js [312] 14
D [313] 14
ASCII [314] 14
WebGL new [315] 13
Flex [316] 13
I2P [317] 13
Разработка под e-commerce new [318] 12
Twitter API [319] 12
Корпуса и блоки питания [320] 11
Dart [321] 10
Help Desk Software [322] 10
Joomla [323] 10
GTK+ [324] 10
Cocoa [325] 10
Mesh-сети [326] 10
Хабракамп [327] 10
GitHub new [328] 9
Google AdSense [329] 9
Firebird/Interbase [330] 9
IIS [331] 7
Разработка под Bada [332] 7
LabVIEW [333] 6
Системные платы [334] 6
Физика new [335] 5
Linkedin [336] 5
Twisted [337] 5
Cobol [338] 5
Laravel new [339] 5
Резервное копирование new [340] 4
Raspberry Pi new [341] 4
Fortran [342] 4
Small Basic [343] 4
Tumblr [344] 3
Cubrid [345] 3
Промышленное программирование new [346] 3
Julia new [347] 2
Microsoft Access [348] 2
Growth Hacking new [349] 2
Google Checkout [350] 0
MySpace [351] 0
Xcode new [352] 0
SCADA new [353] 0
По количеству подписчиков

Чулан [6] 124 521
Я пиарюсь [7] 101 864
Веб-разработка [8] 96 117
Android [15] 95 361
Гаджеты. Устройства для гиков [12] 95 020
Смартфоны и коммуникаторы [29] 94 376
Google [10] 93 844
DIY или Сделай Сам [22] 92 322
Железо [11] 91 959
Информационная безопасность [9] 91 729
Linux [14] 91 103
Робототехника [39] 89 721
Программирование [13] 89 668
Планшеты [75] 88 757
Google Chrome [63] 88 197
Операционные системы [65] 88 098
Интерфейсы [25] 88 064
Windows [36] 87 695
iPhone [68] 87 609
Алгоритмы [32] 87 372
Веб-дизайн [49] 87 341
Электронные книги [133] 86 582
Дизайн в IT [31] 86 266
Совершенный код [156] 85 525
Браузеры [64] 85 443
iPad [233] 85 290
Энергия и элементы питания [85] 84 866
Научно-популярное [47] 84 668
PHP [20] 84 621
Убунтариум [52] 84 613
Разработка [23] 84 474
Старое железо [91] 84 067
Нетбуки [155] 84 060
Firefox [50] 83 996
Учебный процесс в IT [37] 83 645
Фототехника [124] 83 556
Процессоры [179] 83 217
Искусственный интеллект [72] 83 092
IT-стандарты [113] 83 080
Игровые приставки [102] 83 045
Arduino [126] 82 540
Разработка под Android [40] 82 528
*nix [60] 82 017
Накопители [191] 81 897
Фриланс [99] 81 789
Apple [17] 81 742
Софт [53] 81 611
Моддинг [257] 81 565
Хабрахабр [18] 81 317
Электроника для начинающих [76] 81 169
Ненормальное программирование [58] 80 989
Open source [28] 80 508
C++ [43] 80 117
Вирусы (и антивирусы) [116] 80 108
JAVA [30] 79 951
Видеокарты [304] 79 915
Game Development [27] 79 794
Opera [55] 79 598
Криптография [92] 79 590
Занимательные задачки [152] 79 439
Gmail [198] 79 417
Mac OS X [108] 79 339
GPGPU [271] 79 247
Проектирование и рефакторинг [134] 79 077
Регулярные выражения [250] 79 040
Анимация и 3D графика [79] 78 907
Python [38] 78 841
Sony PlayStation [266] 78 625
Яндекс [67] 78 611
Исследования и прогнозы в IT [104] 78 592
Высокая производительность [69] 78 465
Системы управления версиями [177] 78 334
Тестирование [61] 78 299
Git [136] 78 119
История ИТ [70] 78 111
Обработка изображений [66] 77 961
Разработка под iOS [41] 77 904
Инфографика [178] 77 783
Типографика [110] 77 650
Графические оболочки [225] 77 569
Системное программирование [170] 77 562
Microsoft [26] 77 198
Киберпанк [141] 77 140
BlackBerry [215] 77 134
Клиентская оптимизация [153] 77 040
Системное администрирование [21] 76 920
Социальные сети и сообщества [34] 76 601
Платежные системы [82] 76 561
Windows Phone [77] 76 525
YouTube [125] 76 521
IT-Биографии [209] 76 518
Оболочки [296] 76 396
Дополненная реальность [187] 76 207
ВКонтакте [216] 75 955
Internet Explorer [181] 75 791
Wikipedia [138] 75 587
JavaScript [16] 75 456
Nginx [169] 75 417
Спам (и антиспам) [140] 75 400
Статистика в IT [117] 75 303
Биотехнологии [146] 75 231
Safari [280] 75 123
.NET [19] 75 096
Иконосказ [200] 75 077
Mobile Development [46] 75 055
Спортивное программирование [123] 75 035
Хабрахабр — Анонсы [183] 74 977
Twitter [87] 74 815
Ноутбуки [139] 74 768
Сетевые технологии [57] 74 684
КодоБред [247] 74 666
Программинг микроконтроллеров [90] 74 583
Законодательство и IT-бизнес new [44] 74 524
Visual Studio [122] 74 452
Векторная графика [208] 74 381
Управление проектами [24] 74 343
CSS [48] 74 317
Компиляторы [219] 74 182
Поисковые машины и технологии [74] 74 091
Презентации [195] 73 934
Mozilla [185] 73 906
Копирайт [33] 73 871
Электронное правительство [111] 73 530
Беспроводные технологии [95] 73 379
ООП [217] 73 220
Facebook [100] 73 134
Блогосфера [88] 72 957
Медиа [45] 72 803
HTML [80] 72 780
Работа со звуком [101] 72 695
MySQL [105] 72 618
Работа с видео [84] 72 576
Краудсорсинг [107] 72 470
Ruby [71] 72 361
Семантическая Сеть [227] 72 348
VIM [189] 72 054
Настольные компьютеры [259] 71 904
Сетевое оборудование [135] 71 874
Восстановление данных [196] 71 842
Adobe [109] 71 670
Серверная оптимизация [167] 71 484
TDD [220] 71 413
Google Web Toolkit [291] 71 146
Хостинг [42] 71 140
Skype [112] 71 115
jQuery [73] 71 051
Облачные вычисления [51] 70 967
Assembler [184] 70 903
LiveJournal [212] 70 694
Виртуализация [78] 70 557
Периферия [255] 70 344
Мониторы и ТВ [261] 70 339
Демосцена [249] 70 252
Flash-платформа [115] 70 239
Системные платы [334] 69 800
Ajax [197] 69 690
ASCII [314] 69 615
GTD [35] 69 606
Системы охлаждения [308] 69 554
Серверное администрирование [121] 69 490
Разработка под Java ME [275] 69 484
PowerShell [205] 69 471
Корпуса и блоки питания [320] 69 317
OpenStreetMap [206] 69 275
SQL [127] 69 224
Perl [130] 69 202
Mail.Ru [207] 69 150
Sphinx [270] 69 123
Amazon Kindle [282] 69 117
Медиаплееры [289] 69 107
Google App Engine [192] 68 995
ИТ-Инфраструктура [54] 68 951
Silverlight [159] 68 910
Usability [132] 68 852
ASP [150] 68 839
Peer-to-Peer [59] 68 785
Delphi [157] 68 696
Mono и Moonlight [252] 68 672
Видео-техника [229] 68 670
SaaS / S+S [232] 68 650
Erlang/OTP [201] 68 527
Microsoft Kinect [285] 68 330
Мобильный веб [114] 68 062
Haskell [174] 68 002
SharePoint [202] 67 931
Scala [231] 67 663
Lisp [248] 67 630
Финансы в IT-индустрии [94] 67 607
Bing [287] 67 511
Офисы IT-компаний [142] 67 490
Домены [98] 67 431
3G [176] 67 295
Sun Microsystems [311] 67 134
C# [83] 67 072
GPS [188] 66 951
Creative Commons [222] 66 917
Cisco [129] 66 765
Yahoo [203] 66 549
Суп [298] 66 473
Рамблер [246] 66 449
IP-телефония [86] 66 391
WordPress [137] 66 321
Веб-аналитика [166] 66 186
Small Basic [343] 65 777
Нанотехнологии [242] 65 698
Brainfuck [300] 65 698
Бегун [288] 65 574
C [186] 65 499
Карьера в IT-индустрии [62] 65 484
Биоинформатика [218] 65 346
IM [97] 65 195
Телефония [120] 65 161
ГЛОНАСС [240] 65 035
LTE [204] 65 031
Отладка [262] 64 965
IPTV [230] 64 903
Apache [276] 64 747
WiMAX [226] 64 516
NoSQL [147] 64 462
XML [293] 64 452
LabVIEW [333] 64 032
PostgreSQL [163] 63 808
CMS [89] 63 798
Анализ и проектирование систем [145] 63 789
Data Mining [131] 63 429
Разработка под Windows Phone [143] 63 231
Оценка и экспертиза IT-проектов [221] 63 150
Бизнес студии [119] 62 653
Патенты [149] 62 628
Радиосвязь [234] 62 543
Objective C [193] 62 397
PDF [309] 62 225
MongoDB [263] 62 180
Байнет [144] 62 092
Oracle [154] 61 971
Agile [168] 61 815
Fidonet [269] 61 667
IIS [331] 61 384
Qt Software [96] 61 314
UML Design [295] 61 176
Help Desk Software [322] 61 107
Canvas [211] 61 036
Coworking: работа 2.0 [165] 60 800
INFOLUST [253] 60 691
CAD/CAM [244] 60 679
Google Plus [301] 60 381
Microsoft SQL Server [199] 60 229
ERP-системы [173] 60 131
Django [103] 60 119
Mercurial [303] 60 064
Google Analytics [292] 60 018
Ruby on Rails [106] 59 921
Eclipse [254] 59 786
Микроформаты [237] 59 732
Prolog [307] 59 727
Lua [297] 59 707
Drupal [128] 59 627
Библиотека ExtJS/Sencha [214] 59 563
Yii [172] 59 549
Cocoa [325] 59 009
Dart [321] 58 889
XSLT [274] 58 845
Zend Framework [164] 58 803
Google AdSense [329] 58 774
Linkedin [336] 58 626
Doctrine ORM [302] 58 411
Amazon Web Services [148] 58 396
Maps API [238] 58 232
Fortran [342] 58 166
Администрирование баз данных [194] 57 994
Google Checkout [350] 57 982
Symfony [151] 57 801
Cobol [338] 57 789
LaTeX [267] 57 694
Wiki-технология [258] 57 553
Tumblr [344] 57 225
CodeIgniter [235] 57 202
MODX [180] 57 195
DNS [277] 56 880
Kohana [239] 56 821
LiveStreet [265] 56 805
GreaseMonkey [245] 56 778
Google API [251] 56 694
MooTools [299] 56 586
Cubrid [345] 56 218
CakePHP [290] 56 188
Вконтакте API [264] 56 150
Twisted [337] 56 091
MySpace [351] 56 044
Groovy & Grails [273] 55 970
SmartTV [236] 55 638
API [171] 55 556
Яндекс API [260] 54 962
Asterisk [175] 54 796
Хабрахабр API [268] 53 953
Facebook API [305] 53 943
Twitter API [319] 53 533
Go [243] 53 219
Joomla [323] 52 427
Разработка под Bada [332] 52 204
GTK+ [324] 51 409
Microsoft Access [348] 51 313
Математика [81] 50 725
1С-Битрикс [281] 50 525
Краудфандинг [118] 50 194
Космонавтика [56] 50 055
Action Script [294] 49 763
Flex [316] 48 733
CRM-системы [283] 48 715
Параллельное программирование [223] 48 335
Геоинформационные сервисы [158] 46 788
Функциональное программирование [213] 45 774
Unity3D [160] 44 350
Хабракамп [327] 43 488
Big Data [182] 40 561
Accessibility [272] 40 427
Emacs [256] 39 824
Windows Azure [162] 37 406
3D-принтеры [161] 36 576
R [286] 35 515
Открытые данные [241] 29 026
AngularJS [228] 21 091
Визуализация данных [310] 20 632
Tizen [279] 19 933
I2P [317] 13 001
Mesh-сети [326] 12 610
D [313] 12 585
ECM/СЭД [190] 11 886
Derby.js [312] 11 461
SQLite [278] 11 175
Умный дом [284] 11 122
Bitcoin [210] 10 871
Firebird/Interbase [330] 9 755
Node.JS [93] 8 628
IPv6 new [224] 6 186
Meteor.JS new [306] 5 919
GitHub new [328] 3 742
WebGL new [315] 3 533
Резервное копирование new [340] 3 503
Xcode new [352] 2 823
Физика new [335] 2 372
Raspberry Pi new [341] 2 274
Промышленное программирование new [346] 2 141
Разработка под e-commerce new [318] 2 034
SCADA new [353] 1 856
Laravel new [339] 1 799
Growth Hacking new [349] 1 063
Julia new [347] 948

Когда я отсортировал хабы, обнаружились интересные вещи. Например я не знал, что существуют хабы с нулевым количеством постов. А их оказалось целых 4 штуки! Причём на каждый из них подписано более 500 человек. Наверно это очень перспективные направления — не имея постов на них уже набежало столько народу. У хаба MySpace [354] нету ни одного поста/события, зато более 55К подписчиков — это о чём-то говорит!

Тройка хабов — Чулан [6], Я пиарюсь [7] и Веб-разработка [8] — лидируют как по количеству постов, так и по количеству читателей. И в этом нет ничего удивительного — первые два хаба весьма общие и свободные, а уж веб-разработка интересна многим. Далее идёт Информационная безопасность [9], которая пользуется на хабре бешеной популярностью. За ней — Google [10], которую можно считать компанией №1 в области IT — по ней больше всего постов, по сравнению с другими. Отчасти благодаря её ОС Android [15], которой выпало 4 место по количеству подписчиков.

К сожалению, я так и не понял, почему хаб Хабрахабр [18] — оффтопик. По количеству постов он будет на 13 месте, да и подписчиков у него >80К. Получается, что писать на сайте об этом же сайте — отход от темы?

Огорчило, что хаб Java [30] находится не так высоко, как хотелось бы.

Рейтинг компаний

Хотя изначально я планировал построить рейтинг только для хабов, в коммпентариях к статье выдвинули хорошую идею — сделать тоже самое и для компаний. Код при этом сильно менять не пришлось.

Компаний очень много — 1343. Поэтому я выложу только ТОП-30 и последние 10 компаний. Вот ведь интересный момент — хабра почему-то показывает Все (1331), хотя моя программа насчитала их 1343 — и, собственно, это правильно. Если вручную их сосчитать — умножить количество страниц 67 на 20 компаний да ещё 3 — получается 1343.

Вот интересно, а почему компании Студия Артемия Лебедева [355], Adobe [356], ВКонтакте [357] и Skype [358] деактивировали свой профиль? Вроде как много подписчиков, в ТОП они попали. Блоги остальных компаний из ТОП-30 рабочие.

По количеству подписчиков

Яндекс [359] 11 056
Google [360] 10 999
Microsoft [361] 6 797
Intel [362] 5 463
Apple [363] 4 124
Opera Software ASA [364] 3 873
Журнал Хакер [365] 3 034
Zfort Group [366] 2 969
JetBrains [367] 2 946
Mail.Ru Group [368] 2 921
ВымпелКом (Билайн) [369] 2 730
IBM [370] 2 655
Студия Артемия Лебедева [355] 2 640
Nokia [371] 2 542
ТМ [372] 2 314
Простая Наука [373] 2 222
Samsung [374] 2 222
2ГИС [375] 1 992
Adobe [356] 1 878
ABBYY [376] 1 847
Box Overview [377] 1 844
ВКонтакте [357] 1 841
HP [378] 1 828
Мосигра [379] 1 772
Skype [358] 1 718
«Лаборатория Касперского» [380] 1 667
ASUS Russia [381] 1 615
Sony Mobile Communications [382] 1 572
Apps4All [383] 1 541
LinguaLeo [384] 1 493
(...)
Angie [385] 5
Photoplay [386] 5
Флорист.ру [387] 5
PlatOn [388] 5
Polyvizor [389] 5
Dulton Media LLC [390] 5
bdl premium [391] 4
GolovachCourses [392] 4
timera inc. [393] 4
Slon.ru [394] 3

Разработка

Очень долго я пытался разобраться в Хабрахабр Api. Как выяснилось, он закрыт и пока что в процессе разработки. Однако в переписке с support@habrahabr.ru мне сказали, что они не имеют ничего против парсинга их страниц. Собственно, именно так и работают хабраклиенты для Android (на данный момент).

Когда речь идёт о проектах «для себя», я выбираю любимую Джаву. Она и на этот раз меня не подвела — библиотека JSoup позволила в несколько строчек получить необходимые данные с HTML страницы. Но давайте сперва обсудим, как устроены хабы.

Страницы с хабами расположены по адресам habrahabr.ru/hubs/pageN/, где N — номер от 1 и далее. Посему, если мы хотим получить полный список из всех хабов — нам нужно загружать и анализировать эти страницы, пока они не закончатся. На каждой странице присутствует список из хабов. Формат элемента списка довольно простой и легко анализируется. Выглядит он так:

<div class="hub " id="hub_50">
	<div class="habraindex">1 280,58</div>
	<div class="info">
		<div class="title">
			<a href="http://habrahabr.ru/hub/infosecurity/">Информационная безопасность</a>
			<span class="profiled_hub" title="Профильный хаб"></span>
			
		</div>
			<div class="buttons">
				<input type="button" class="mini blue  subscribeHub" value="Подписаться" data-id="50">
				<input type="button" class="mini hidden unsubscribeHub" value="Подписан" data-id="50" "="">
			</div>
		<div class="clear"></div>
		<div class="stat"><a href="http://habrahabr.ru/hub/infosecurity/subscribers/" class="members_count">91741 подписчик</a>, <a href="http://habrahabr.ru/hub/infosecurity/posts/">3385 постов</a><a></a></div><a>
	</a></div><a>
</a></div>

Давайте напишем метод, который возвращает нам список из всех хабов на сайте:

static List<Hub> getAllHubs() {
        ArrayList<Hub> fullHubsList = new ArrayList<>();
        String urlHubsIncomplete = "http://habrahabr.ru/hubs/page";
        int pageNum = 1;

        do {
            String urlHubs = urlHubsIncomplete + pageNum;

            try {
                Document doc = Jsoup.connect(urlHubs).get();
                Elements hubs = doc.select(".hub");
                if (hubs.size() == 0) {
                    break;
                }
                for (Element hubElem : hubs) {
                    Hub hub = new Hub(hubElem);
                    fullHubsList.add(hub);
                }

                pageNum++;
            } catch (Exception e) {
                e.printStackTrace();
                break;
            }

        } while (true);

        return fullHubsList;
    }

Мы крутим бесконечный цикл while, формируя с каждой итерацией новый URL. Затем, с помощью Jsoup.connect(urlHubs).get() получаем непосредственно HTML-документ со списком хабов и их параметрами. Как несложно заметить — div с информацией о хабе имеет класс hub — и, вызвав doc.select(".hub"), мы получаем список из этих элементов. Если его размер равен нулю — значит мы прошли последнюю страницу и уже проанализировали все хабы — тогда мы выходим из цикла.

Далее — проходим по всем хабам-элементам и для каждого создаём объект типа Hub, передав в конструктор наш org.jsoup.nodes.Element. В нём располагается HTML-код такого же формата, как указан выше. Теперь давайте абстрагируемся от всего. Для этого и существует ООП. Перед нами есть только тот кусочек HTML, представленный выше, и класс, в который его нужно запихнуть. Напишем каркас для нашего класса:

import org.jsoup.nodes.Element;

public class Hub {
    String title;
    int posts;
    boolean profiled;
    int membersCount;
    float habraindex;
    String url;

    public Hub(Element hubElem) {
       
    }
}

Напишем конструктор. Для начала сделаем самое простое — получим данные из заголовочного тега. Для этого мы сначала извлекаем сам div вида

<div class="title">
    <a href="http://habrahabr.ru/hub/infosecurity/">Информационная безопасность</a>
    <span class="profiled_hub" title="Профильный хаб"></span>
</div>

Парсим через

Element titleDiv = hubElem.select(".title").get(0);
Element tagA = titleDiv.getElementsByTag("a").get(0);
title = tagA.text();
url = tagA.attr("href");
profiled = (hubElem.select(".profiled_hub").size() != 0);

Далее, мы хотим пропарсить количество подписчиков и постов — собственно те параметры, по которым мы и будем сортировать. Но сразу же сталкиваемся с первой проблемой — тег содержит строку «91741 подписчик», которую мы не можем просто так взять и преобразовать в Integer — она содержит буквы! Тут нам на помощь приходят регулярные выражения [395]. Быстренько пишем ловкий метод, который получает строку и вырезает из неё всё, кроме цифр, да ещё и преобразует результат в int. D — это НЕ цифра, а + — «встречается 1 или более раз». Т.е. мы в данном случае заменяем буквы на пустоту.

private int getNumbers(String str) {             
    String numbers = str.replaceAll("\D+", ""); 
    return Integer.valueOf(numbers);             
}

Вот теперь мы уже можем со спокойной душой получить наши значения:

String membersCountFullStr = hubElem.select(".members_count").get(0).text();
membersCount = getNumbers(membersCountFullStr);

String statFullStr = hubElem.select(".stat").get(0).getAllElements().get(2).text();
posts = getNumbers(statFullStr);

В принципе, на этом можно было остановится, но я решил ради интереса извлечь всю возможную информацию о хабе. Тут возникла весьма интересная вторая проблема, которая будет изюминкой статьи. Как пропарсить хабраиндекс?

Для начала, следует заменить запятую на точку и убрать лишние пробелы. Но этого не достаточно! Парсер всё равно выдаёт ошибку, если скопировать и вставить хабраиндекс в код — Double.valueOf("–1.11"). А если ввести вручную то же самое число — всё окей. Причём визуально в моей IDEA [396] они абсолютно идентично выглядят!

Оказывается, дизайнеры хабры просто использовали dash [397] вместо minus [398] — c иным кодом символа, и парсер его, понятное дело, не ест. Возьмите на заметку. Суть проблемы в следующем [399]:

System.out.println((int)'-');//45
System.out.println((int)'–');//8211

Когда-то в своей статье Хитрые задачи по Java [400] я рассмотрел подвох, когда L маленькую можно не отличить от 1. Собственно, сейчас я напоролся на аналогичную проблему.

Посему, код для извлечения хабраиндекса будет чуть сложнее:

String rawHabraIndex = hubElem.select(".habraindex").get(0).text();//1 265,92
char minus = 45;//'-'
char dash = 8211;//'–'
String niceHabraIndex = rawHabraIndex.replaceAll(" ", "").replace(",", ".").replace(dash,minus);//1266.72
habraindex = Float.valueOf(niceHabraIndex);

Далее, пишем компаратор по постам как вложенный статический класс для Hub

public static class ComparePosts implements Comparator<Hub> { 
    @Override                                                 
    public int compare(Hub o1, Hub o2) {                      
        return o2.posts - o1.posts;                           
    }                                                         
}                                      

И сортируем по нему где-нибудь в main

List<Hub> hubs = getAllHubs();                 
Collections.sort(hubs, new Hub.ComparePosts());

Всё, задача выполнена! С количеством подписчиков аналогично. Далее я написал код, который выводит в консоль два списка в таком виде, чтобы их сразу можно было вставить в статью — и сделал это вначале.

На получение всех хабов уходит примерно 10 секунд. Исходный код можно скачать здесь [401]. Собираем и запускаем вот так, не забыв установить Jsoup [5] и заменить путь на ваш:

javac -cp .;"C:proglibjsoup-1.7.3.jar" com/kciray/habrahubs/Main.java
java -cp .;"C:proglibjsoup-1.7.3.jar" com.kciray.habrahubs.Main

Автор: kciray

Источник [402]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/java/54558

Ссылки в тексте:

[1] около 350 хабов: http://habrahabr.ru/hubs/

[2] по имени: http://habrahabr.ru/hubs/?order=title

[3] по количеству постов: http://habrahabr.ru/hubs/?order=posts

[4] рейтинг постов хаба: http://habrahabr.ru/post/204706/

[5] JSoup: http://jsoup.org/

[6] Чулан: http://habrahabr.ru/hub/closet/

[7] Я пиарюсь: http://habrahabr.ru/hub/i_am_advertising/

[8] Веб-разработка: http://habrahabr.ru/hub/webdev/

[9] Информационная безопасность: http://habrahabr.ru/hub/infosecurity/

[10] Google: http://habrahabr.ru/hub/google/

[11] Железо: http://habrahabr.ru/hub/hardware/

[12] Гаджеты. Устройства для гиков: http://habrahabr.ru/hub/gadgets/

[13] Программирование: http://habrahabr.ru/hub/programming/

[14] Linux: http://habrahabr.ru/hub/linux/

[15] Android: http://habrahabr.ru/hub/android/

[16] JavaScript: http://habrahabr.ru/hub/javascript/

[17] Apple: http://habrahabr.ru/hub/apple/

[18] Хабрахабр: http://habrahabr.ru/hub/ilhh/

[19] .NET: http://habrahabr.ru/hub/net/

[20] PHP: http://habrahabr.ru/hub/php/

[21] Системное администрирование: http://habrahabr.ru/hub/sys_admin/

[22] DIY или Сделай Сам: http://habrahabr.ru/hub/DIY/

[23] Разработка: http://habrahabr.ru/hub/development/

[24] Управление проектами: http://habrahabr.ru/hub/pm/

[25] Интерфейсы: http://habrahabr.ru/hub/ui/

[26] Microsoft: http://habrahabr.ru/hub/microsoft/

[27] Game Development: http://habrahabr.ru/hub/gdev/

[28] Open source: http://habrahabr.ru/hub/open_source/

[29] Смартфоны и коммуникаторы: http://habrahabr.ru/hub/smartphones/

[30] JAVA: http://habrahabr.ru/hub/java/

[31] Дизайн в IT: http://habrahabr.ru/hub/design/

[32] Алгоритмы: http://habrahabr.ru/hub/algorithms/

[33] Копирайт: http://habrahabr.ru/hub/copyright/

[34] Социальные сети и сообщества: http://habrahabr.ru/hub/social_networks/

[35] GTD: http://habrahabr.ru/hub/gtd/

[36] Windows: http://habrahabr.ru/hub/windows/

[37] Учебный процесс в IT: http://habrahabr.ru/hub/study/

[38] Python: http://habrahabr.ru/hub/python/

[39] Робототехника: http://habrahabr.ru/hub/robot/

[40] Разработка под Android: http://habrahabr.ru/hub/android_dev/

[41] Разработка под iOS: http://habrahabr.ru/hub/ios_dev/

[42] Хостинг: http://habrahabr.ru/hub/hosting/

[43] C++: http://habrahabr.ru/hub/cpp/

[44] Законодательство и IT-бизнес new: http://habrahabr.ru/hub/business-laws/

[45] Медиа: http://habrahabr.ru/hub/mass_media/

[46] Mobile Development: http://habrahabr.ru/hub/mobiledev/

[47] Научно-популярное: http://habrahabr.ru/hub/popular_science/

[48] CSS: http://habrahabr.ru/hub/css/

[49] Веб-дизайн: http://habrahabr.ru/hub/web_design/

[50] Firefox: http://habrahabr.ru/hub/firefox/

[51] Облачные вычисления: http://habrahabr.ru/hub/cloud_computing/

[52] Убунтариум: http://habrahabr.ru/hub/ubuntu/

[53] Софт: http://habrahabr.ru/hub/soft/

[54] ИТ-Инфраструктура: http://habrahabr.ru/hub/it-infrastructure/

[55] Opera: http://habrahabr.ru/hub/opera/

[56] Космонавтика: http://habrahabr.ru/hub/space/

[57] Сетевые технологии: http://habrahabr.ru/hub/network_technologies/

[58] Ненормальное программирование: http://habrahabr.ru/hub/crazydev/

[59] Peer-to-Peer: http://habrahabr.ru/hub/p2p/

[60] *nix: http://habrahabr.ru/hub/nix/

[61] Тестирование: http://habrahabr.ru/hub/testing/

[62] Карьера в IT-индустрии: http://habrahabr.ru/hub/hr/

[63] Google Chrome: http://habrahabr.ru/hub/google_chrome/

[64] Браузеры: http://habrahabr.ru/hub/browsers/

[65] Операционные системы: http://habrahabr.ru/hub/os/

[66] Обработка изображений: http://habrahabr.ru/hub/image_processing/

[67] Яндекс: http://habrahabr.ru/hub/yandex/

[68] iPhone: http://habrahabr.ru/hub/iphone/

[69] Высокая производительность: http://habrahabr.ru/hub/hi/

[70] История ИТ: http://habrahabr.ru/hub/history/

[71] Ruby: http://habrahabr.ru/hub/ruby/

[72] Искусственный интеллект: http://habrahabr.ru/hub/artificial_intelligence/

[73] jQuery: http://habrahabr.ru/hub/jquery/

[74] Поисковые машины и технологии: http://habrahabr.ru/hub/search_engines/

[75] Планшеты: http://habrahabr.ru/hub/iTablet/

[76] Электроника для начинающих: http://habrahabr.ru/hub/easyelectronics/

[77] Windows Phone: http://habrahabr.ru/hub/windows_mobile/

[78] Виртуализация: http://habrahabr.ru/hub/virtualization/

[79] Анимация и 3D графика: http://habrahabr.ru/hub/3d_graphics/

[80] HTML: http://habrahabr.ru/hub/html5/

[81] Математика: http://habrahabr.ru/hub/maths/

[82] Платежные системы: http://habrahabr.ru/hub/pay_system/

[83] C#: http://habrahabr.ru/hub/csharp/

[84] Работа с видео: http://habrahabr.ru/hub/video/

[85] Энергия и элементы питания: http://habrahabr.ru/hub/energy/

[86] IP-телефония: http://habrahabr.ru/hub/voip/

[87] Twitter: http://habrahabr.ru/hub/twitter/

[88] Блогосфера: http://habrahabr.ru/hub/blogosphere/

[89] CMS: http://habrahabr.ru/hub/cms/

[90] Программинг микроконтроллеров: http://habrahabr.ru/hub/controllers/

[91] Старое железо: http://habrahabr.ru/hub/antikvariat/

[92] Криптография: http://habrahabr.ru/hub/crypto/

[93] Node.JS: http://habrahabr.ru/hub/nodejs/

[94] Финансы в IT-индустрии: http://habrahabr.ru/hub/finance/

[95] Беспроводные технологии: http://habrahabr.ru/hub/wireless/

[96] Qt Software: http://habrahabr.ru/hub/qt_software/

[97] IM: http://habrahabr.ru/hub/im/

[98] Домены: http://habrahabr.ru/hub/domains/

[99] Фриланс: http://habrahabr.ru/hub/freelance/

[100] Facebook: http://habrahabr.ru/hub/facebook/

[101] Работа со звуком: http://habrahabr.ru/hub/sound_and_music/

[102] Игровые приставки: http://habrahabr.ru/hub/game_consoles/

[103] Django: http://habrahabr.ru/hub/django/

[104] Исследования и прогнозы в IT: http://habrahabr.ru/hub/research/

[105] MySQL: http://habrahabr.ru/hub/mysql/

[106] Ruby on Rails: http://habrahabr.ru/hub/ror/

[107] Краудсорсинг: http://habrahabr.ru/hub/crowdsourcing/

[108] Mac OS X: http://habrahabr.ru/hub/macosx/

[109] Adobe: http://habrahabr.ru/hub/adobe/

[110] Типографика: http://habrahabr.ru/hub/typography/

[111] Электронное правительство: http://habrahabr.ru/hub/e_gov/

[112] Skype: http://habrahabr.ru/hub/skype/

[113] IT-стандарты: http://habrahabr.ru/hub/itstandarts/

[114] Мобильный веб: http://habrahabr.ru/hub/mobile/

[115] Flash-платформа: http://habrahabr.ru/hub/Flash_Platform/

[116] Вирусы (и антивирусы): http://habrahabr.ru/hub/virus/

[117] Статистика в IT: http://habrahabr.ru/hub/statistics/

[118] Краудфандинг: http://habrahabr.ru/hub/crowdfunding/

[119] Бизнес студии: http://habrahabr.ru/hub/studiobusiness/

[120] Телефония: http://habrahabr.ru/hub/telephony/

[121] Серверное администрирование: http://habrahabr.ru/hub/s_admin/

[122] Visual Studio: http://habrahabr.ru/hub/vs/

[123] Спортивное программирование: http://habrahabr.ru/hub/sport_programming/

[124] Фототехника: http://habrahabr.ru/hub/photo/

[125] YouTube: http://habrahabr.ru/hub/youtube/

[126] Arduino: http://habrahabr.ru/hub/arduino/

[127] SQL: http://habrahabr.ru/hub/sql/

[128] Drupal: http://habrahabr.ru/hub/drupal/

[129] Cisco: http://habrahabr.ru/hub/cisconetworks/

[130] Perl: http://habrahabr.ru/hub/perl/

[131] Data Mining: http://habrahabr.ru/hub/data_mining/

[132] Usability: http://habrahabr.ru/hub/usability/

[133] Электронные книги: http://habrahabr.ru/hub/ebooks/

[134] Проектирование и рефакторинг: http://habrahabr.ru/hub/refactoring/

[135] Сетевое оборудование: http://habrahabr.ru/hub/Network_hardware/

[136] Git: http://habrahabr.ru/hub/Git/

[137] WordPress: http://habrahabr.ru/hub/wordpress/

[138] Wikipedia: http://habrahabr.ru/hub/wikipedia/

[139] Ноутбуки: http://habrahabr.ru/hub/notebooks/

[140] Спам (и антиспам): http://habrahabr.ru/hub/spam/

[141] Киберпанк: http://habrahabr.ru/hub/cyberpunk/

[142] Офисы IT-компаний: http://habrahabr.ru/hub/office/

[143] Разработка под Windows Phone: http://habrahabr.ru/hub/wp_dev/

[144] Байнет: http://habrahabr.ru/hub/bynet/

[145] Анализ и проектирование систем: http://habrahabr.ru/hub/sysan4dummies/

[146] Биотехнологии: http://habrahabr.ru/hub/biotech/

[147] NoSQL: http://habrahabr.ru/hub/nosql/

[148] Amazon Web Services: http://habrahabr.ru/hub/aws/

[149] Патенты: http://habrahabr.ru/hub/patents/

[150] ASP: http://habrahabr.ru/hub/asp/

[151] Symfony: http://habrahabr.ru/hub/symfony/

[152] Занимательные задачки: http://habrahabr.ru/hub/zadachki/

[153] Клиентская оптимизация: http://habrahabr.ru/hub/client_side_optimization/

[154] Oracle: http://habrahabr.ru/hub/oracle/

[155] Нетбуки: http://habrahabr.ru/hub/netbook/

[156] Совершенный код: http://habrahabr.ru/hub/complete_code/

[157] Delphi: http://habrahabr.ru/hub/delphi/

[158] Геоинформационные сервисы: http://habrahabr.ru/hub/geo/

[159] Silverlight: http://habrahabr.ru/hub/silverlight/

[160] Unity3D: http://habrahabr.ru/hub/unity3d/

[161] 3D-принтеры: http://habrahabr.ru/hub/3d-printers/

[162] Windows Azure: http://habrahabr.ru/hub/azure/

[163] PostgreSQL: http://habrahabr.ru/hub/postgresql/

[164] Zend Framework: http://habrahabr.ru/hub/zend_framework/

[165] Coworking: работа 2.0: http://habrahabr.ru/hub/coworking/

[166] Веб-аналитика: http://habrahabr.ru/hub/web_analytics/

[167] Серверная оптимизация: http://habrahabr.ru/hub/server_side_optimization/

[168] Agile: http://habrahabr.ru/hub/agile/

[169] Nginx: http://habrahabr.ru/hub/nginx/

[170] Системное программирование: http://habrahabr.ru/hub/system_programming/

[171] API: http://habrahabr.ru/hub/api/

[172] Yii: http://habrahabr.ru/hub/yii/

[173] ERP-системы: http://habrahabr.ru/hub/erp/

[174] Haskell: http://habrahabr.ru/hub/Haskell/

[175] Asterisk: http://habrahabr.ru/hub/Asterisk/

[176] 3G: http://habrahabr.ru/hub/3g/

[177] Системы управления версиями: http://habrahabr.ru/hub/cvs/

[178] Инфографика: http://habrahabr.ru/hub/infographics/

[179] Процессоры: http://habrahabr.ru/hub/cpu/

[180] MODX: http://habrahabr.ru/hub/modx/

[181] Internet Explorer: http://habrahabr.ru/hub/ie/

[182] Big Data: http://habrahabr.ru/hub/bigdata/

[183] Хабрахабр — Анонсы: http://habrahabr.ru/hub/announcements/

[184] Assembler: http://habrahabr.ru/hub/asm/

[185] Mozilla: http://habrahabr.ru/hub/mozilla/

[186] C: http://habrahabr.ru/hub/c/

[187] Дополненная реальность: http://habrahabr.ru/hub/augmented_reality/

[188] GPS: http://habrahabr.ru/hub/gps/

[189] VIM: http://habrahabr.ru/hub/vim/

[190] ECM/СЭД: http://habrahabr.ru/hub/ecm/

[191] Накопители: http://habrahabr.ru/hub/storages/

[192] Google App Engine: http://habrahabr.ru/hub/gae/

[193] Objective C: http://habrahabr.ru/hub/ObjectiveC/

[194] Администрирование баз данных: http://habrahabr.ru/hub/db_admins/

[195] Презентации: http://habrahabr.ru/hub/presentation/

[196] Восстановление данных: http://habrahabr.ru/hub/data_recovery/

[197] Ajax: http://habrahabr.ru/hub/AJAX/

[198] Gmail: http://habrahabr.ru/hub/GMail/

[199] Microsoft SQL Server: http://habrahabr.ru/hub/mssql/

[200] Иконосказ: http://habrahabr.ru/hub/iconoskaz/

[201] Erlang/OTP: http://habrahabr.ru/hub/erlang/

[202] SharePoint: http://habrahabr.ru/hub/sharepoint/

[203] Yahoo: http://habrahabr.ru/hub/yahoo/

[204] LTE: http://habrahabr.ru/hub/LTE/

[205] PowerShell: http://habrahabr.ru/hub/powershell/

[206] OpenStreetMap: http://habrahabr.ru/hub/openstreetmap/

[207] Mail.Ru: http://habrahabr.ru/hub/mailru/

[208] Векторная графика: http://habrahabr.ru/hub/svg/

[209] IT-Биографии: http://habrahabr.ru/hub/it_bigraphy/

[210] Bitcoin: http://habrahabr.ru/hub/bitcoin/

[211] Canvas: http://habrahabr.ru/hub/canvas/

[212] LiveJournal: http://habrahabr.ru/hub/livejournal/

[213] Функциональное программирование: http://habrahabr.ru/hub/funcprog/

[214] Библиотека ExtJS/Sencha: http://habrahabr.ru/hub/extjs/

[215] BlackBerry: http://habrahabr.ru/hub/blackberry/

[216] ВКонтакте: http://habrahabr.ru/hub/vkontakte/

[217] ООП: http://habrahabr.ru/hub/oop/

[218] Биоинформатика: http://habrahabr.ru/hub/bioinformatics/

[219] Компиляторы: http://habrahabr.ru/hub/compilers/

[220] TDD: http://habrahabr.ru/hub/tdd/

[221] Оценка и экспертиза IT-проектов: http://habrahabr.ru/hub/lynch/

[222] Creative Commons: http://habrahabr.ru/hub/creative_commons/

[223] Параллельное программирование: http://habrahabr.ru/hub/parallel_programming/

[224] IPv6 new: http://habrahabr.ru/hub/ipv6/

[225] Графические оболочки: http://habrahabr.ru/hub/desktop_environment/

[226] WiMAX: http://habrahabr.ru/hub/WiMAX/

[227] Семантическая Сеть: http://habrahabr.ru/hub/sw/

[228] AngularJS: http://habrahabr.ru/hub/angularjs/

[229] Видео-техника: http://habrahabr.ru/hub/video_tech/

[230] IPTV: http://habrahabr.ru/hub/IPTV/

[231] Scala: http://habrahabr.ru/hub/scala/

[232] SaaS / S+S: http://habrahabr.ru/hub/saas/

[233] iPad: http://habrahabr.ru/hub/ipad/

[234] Радиосвязь: http://habrahabr.ru/hub/radio/

[235] CodeIgniter: http://habrahabr.ru/hub/codeigniter/

[236] SmartTV: http://habrahabr.ru/hub/SmartTV/

[237] Микроформаты: http://habrahabr.ru/hub/microformats/

[238] Maps API: http://habrahabr.ru/hub/map_api/

[239] Kohana: http://habrahabr.ru/hub/kohanaphp/

[240] ГЛОНАСС: http://habrahabr.ru/hub/glonass/

[241] Открытые данные: http://habrahabr.ru/hub/opendata/

[242] Нанотехнологии: http://habrahabr.ru/hub/nano/

[243] Go: http://habrahabr.ru/hub/go/

[244] CAD/CAM: http://habrahabr.ru/hub/cad_cam/

[245] GreaseMonkey: http://habrahabr.ru/hub/GreaseMonkey/

[246] Рамблер: http://habrahabr.ru/hub/rambler/

[247] КодоБред: http://habrahabr.ru/hub/code_wtf/

[248] Lisp: http://habrahabr.ru/hub/lisp/

[249] Демосцена: http://habrahabr.ru/hub/demoscene/

[250] Регулярные выражения: http://habrahabr.ru/hub/regex/

[251] Google API: http://habrahabr.ru/hub/google_api/

[252] Mono и Moonlight: http://habrahabr.ru/hub/mono/

[253] INFOLUST: http://habrahabr.ru/hub/infolust/

[254] Eclipse: http://habrahabr.ru/hub/eclipse/

[255] Периферия: http://habrahabr.ru/hub/Peripheral/

[256] Emacs: http://habrahabr.ru/hub/emacs/

[257] Моддинг: http://habrahabr.ru/hub/modding/

[258] Wiki-технология: http://habrahabr.ru/hub/wiki/

[259] Настольные компьютеры: http://habrahabr.ru/hub/desktops/

[260] Яндекс API: http://habrahabr.ru/hub/yandex_api/

[261] Мониторы и ТВ: http://habrahabr.ru/hub/displays/

[262] Отладка: http://habrahabr.ru/hub/debug/

[263] MongoDB: http://habrahabr.ru/hub/MongoDB/

[264] Вконтакте API: http://habrahabr.ru/hub/vkontakte_api/

[265] LiveStreet: http://habrahabr.ru/hub/livestreet/

[266] Sony PlayStation: http://habrahabr.ru/hub/playstation/

[267] LaTeX: http://habrahabr.ru/hub/latex/

[268] Хабрахабр API: http://habrahabr.ru/hub/habrahabr_api/

[269] Fidonet: http://habrahabr.ru/hub/fido/

[270] Sphinx: http://habrahabr.ru/hub/sphinx/

[271] GPGPU: http://habrahabr.ru/hub/GPGPU/

[272] Accessibility: http://habrahabr.ru/hub/accessibility/

[273] Groovy & Grails: http://habrahabr.ru/hub/groovy_grails/

[274] XSLT: http://habrahabr.ru/hub/xslt/

[275] Разработка под Java ME: http://habrahabr.ru/hub/javame_dev/

[276] Apache: http://habrahabr.ru/hub/apache/

[277] DNS: http://habrahabr.ru/hub/DNS/

[278] SQLite: http://habrahabr.ru/hub/sqlite/

[279] Tizen: http://habrahabr.ru/hub/tizen/

[280] Safari: http://habrahabr.ru/hub/safari/

[281] 1С-Битрикс: http://habrahabr.ru/hub/bitrix/

[282] Amazon Kindle: http://habrahabr.ru/hub/Kindle/

[283] CRM-системы: http://habrahabr.ru/hub/crm/

[284] Умный дом: http://habrahabr.ru/hub/home_automation/

[285] Microsoft Kinect: http://habrahabr.ru/hub/kinect/

[286] R: http://habrahabr.ru/hub/r/

[287] Bing: http://habrahabr.ru/hub/bing/

[288] Бегун: http://habrahabr.ru/hub/begun/

[289] Медиаплееры: http://habrahabr.ru/hub/nmt/

[290] CakePHP: http://habrahabr.ru/hub/cakephp/

[291] Google Web Toolkit: http://habrahabr.ru/hub/gwt/

[292] Google Analytics: http://habrahabr.ru/hub/google_analytics/

[293] XML: http://habrahabr.ru/hub/xml/

[294] Action Script: http://habrahabr.ru/hub/action_script/

[295] UML Design: http://habrahabr.ru/hub/uml/

[296] Оболочки: http://habrahabr.ru/hub/shells/

[297] Lua: http://habrahabr.ru/hub/Lua/

[298] Суп: http://habrahabr.ru/hub/sup_fabrik/

[299] MooTools: http://habrahabr.ru/hub/mootools/

[300] Brainfuck: http://habrahabr.ru/hub/brainfuck/

[301] Google Plus: http://habrahabr.ru/hub/google_plus/

[302] Doctrine ORM: http://habrahabr.ru/hub/doctrine/

[303] Mercurial: http://habrahabr.ru/hub/Mercurial/

[304] Видеокарты: http://habrahabr.ru/hub/videocards/

[305] Facebook API: http://habrahabr.ru/hub/facebook_api/

[306] Meteor.JS new: http://habrahabr.ru/hub/meteorjs/

[307] Prolog: http://habrahabr.ru/hub/prolog/

[308] Системы охлаждения: http://habrahabr.ru/hub/cooling/

[309] PDF: http://habrahabr.ru/hub/pdf/

[310] Визуализация данных: http://habrahabr.ru/hub/data_visualization/

[311] Sun Microsystems: http://habrahabr.ru/hub/Sun/

[312] Derby.js: http://habrahabr.ru/hub/derbyjs/

[313] D: http://habrahabr.ru/hub/d/

[314] ASCII: http://habrahabr.ru/hub/ascii/

[315] WebGL new: http://habrahabr.ru/hub/webgl/

[316] Flex: http://habrahabr.ru/hub/flex/

[317] I2P: http://habrahabr.ru/hub/i2p/

[318] Разработка под e-commerce new: http://habrahabr.ru/hub/ecommerce_development/

[319] Twitter API: http://habrahabr.ru/hub/twitter_api/

[320] Корпуса и блоки питания: http://habrahabr.ru/hub/cases/

[321] Dart: http://habrahabr.ru/hub/Dart/

[322] Help Desk Software: http://habrahabr.ru/hub/helpdesk/

[323] Joomla: http://habrahabr.ru/hub/joomla/

[324] GTK+: http://habrahabr.ru/hub/gtk/

[325] Cocoa: http://habrahabr.ru/hub/Cocoa/

[326] Mesh-сети: http://habrahabr.ru/hub/mesh_networking/

[327] Хабракамп: http://habrahabr.ru/hub/habracamp/

[328] GitHub new: http://habrahabr.ru/hub/github/

[329] Google AdSense: http://habrahabr.ru/hub/adsense/

[330] Firebird/Interbase: http://habrahabr.ru/hub/Firebird/

[331] IIS: http://habrahabr.ru/hub/iis/

[332] Разработка под Bada: http://habrahabr.ru/hub/bada_dev/

[333] LabVIEW: http://habrahabr.ru/hub/LabVIEW/

[334] Системные платы: http://habrahabr.ru/hub/mainboards/

[335] Физика new: http://habrahabr.ru/hub/physics/

[336] Linkedin: http://habrahabr.ru/hub/Linkedin/

[337] Twisted: http://habrahabr.ru/hub/twisted/

[338] Cobol: http://habrahabr.ru/hub/Cobol/

[339] Laravel new: http://habrahabr.ru/hub/laravel/

[340] Резервное копирование new: http://habrahabr.ru/hub/backup/

[341] Raspberry Pi new: http://habrahabr.ru/hub/raspberrypi/

[342] Fortran: http://habrahabr.ru/hub/Fortran/

[343] Small Basic: http://habrahabr.ru/hub/smallbasic/

[344] Tumblr: http://habrahabr.ru/hub/Tumblr/

[345] Cubrid: http://habrahabr.ru/hub/cubrid/

[346] Промышленное программирование new: http://habrahabr.ru/hub/industrial_control_system/

[347] Julia new: http://habrahabr.ru/hub/julia/

[348] Microsoft Access: http://habrahabr.ru/hub/ms_access/

[349] Growth Hacking new: http://habrahabr.ru/hub/growthhacking/

[350] Google Checkout: http://habrahabr.ru/hub/google_checkout/

[351] MySpace: http://habrahabr.ru/hub/MySpace/

[352] Xcode new: http://habrahabr.ru/hub/xcode/

[353] SCADA new: http://habrahabr.ru/hub/scada/

[354] хаба MySpace: http://habrahabr.ru/hub/MySpace/posts/

[355] Студия Артемия Лебедева: http://habrahabr.ru/company/artlebedev/

[356] Adobe: http://habrahabr.ru/company/adobe/

[357] ВКонтакте: http://habrahabr.ru/company/vkontakte/

[358] Skype: http://habrahabr.ru/company/skype/

[359] Яндекс: http://habrahabr.ru/company/yandex/

[360] Google: http://habrahabr.ru/company/google/

[361] Microsoft: http://habrahabr.ru/company/microsoft/

[362] Intel: http://habrahabr.ru/company/intel/

[363] Apple: http://habrahabr.ru/company/apple/

[364] Opera Software ASA: http://habrahabr.ru/company/opera/

[365] Журнал Хакер: http://habrahabr.ru/company/xakep/

[366] Zfort Group: http://habrahabr.ru/company/zfort/

[367] JetBrains: http://habrahabr.ru/company/JetBrains/

[368] Mail.Ru Group: http://habrahabr.ru/company/mailru/

[369] ВымпелКом (Билайн): http://habrahabr.ru/company/beeline/

[370] IBM: http://habrahabr.ru/company/ibm/

[371] Nokia: http://habrahabr.ru/company/Nokia/

[372] ТМ: http://habrahabr.ru/company/tm/

[373] Простая Наука: http://habrahabr.ru/company/gtv/

[374] Samsung: http://habrahabr.ru/company/samsung/

[375] 2ГИС: http://habrahabr.ru/company/2gis/

[376] ABBYY: http://habrahabr.ru/company/abbyy/

[377] Box Overview: http://habrahabr.ru/company/boxowerview/

[378] HP: http://habrahabr.ru/company/hp/

[379] Мосигра: http://habrahabr.ru/company/mosigra/

[380] «Лаборатория Касперского»: http://habrahabr.ru/company/kaspersky/

[381] ASUS Russia: http://habrahabr.ru/company/asus/

[382] Sony Mobile Communications: http://habrahabr.ru/company/sonyxperia/

[383] Apps4All: http://habrahabr.ru/company/apps4all/

[384] LinguaLeo: http://habrahabr.ru/company/lingualeo/

[385] Angie: http://habrahabr.ru/company/angie/

[386] Photoplay: http://habrahabr.ru/company/photoplay/

[387] Флорист.ру: http://habrahabr.ru/company/florist/

[388] PlatOn: http://habrahabr.ru/company/platon/

[389] Polyvizor: http://habrahabr.ru/company/polyvizor/

[390] Dulton Media LLC: http://habrahabr.ru/company/dultonmedia/

[391] bdl premium: http://habrahabr.ru/company/bdlp/

[392] GolovachCourses: http://habrahabr.ru/company/golovachcourses/

[393] timera inc.: http://habrahabr.ru/company/timera_inc/

[394] Slon.ru: http://habrahabr.ru/company/slon/

[395] регулярные выражения: http://ru.wikipedia.org/wiki/%D0%A0%D0%B5%D0%B3%D1%83%D0%BB%D1%8F%D1%80%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F

[396] IDEA: http://www.jetbrains.com/idea/

[397] dash: http://ru.wikipedia.org/wiki/%D0%A2%D0%B8%D1%80%D0%B5

[398] minus: http://ru.wikipedia.org/wiki/%D0%9C%D0%B8%D0%BD%D1%83%D1%81

[399] в следующем: http://ideone.com/hHbLiF

[400] Хитрые задачи по Java: http://habrahabr.ru/post/203796/

[401] скачать здесь: http://kciray.com/files/zip/habrahubs.zip

[402] Источник: http://habrahabr.ru/post/211775/