ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

جڏهن نئين سال جو اوليوير ختم ٿي ويو، مون وٽ ڪجهه به نه هو، ۽ مون فيصلو ڪيو ته سڀني مضمونن کي پنهنجي ڪمپيوٽر تي Habrahabr (۽ لاڳاپيل پليٽ فارمن) تان ڊائون لوڊ ڪري ۽ دريافت ڪيو.

ڪيتريون ئي دلچسپ ڳالهيون هيون. انهن مان پهريون، سائيٽ جي وجود جي 12 سالن کان مٿي مضمونن جي شڪل ۽ مضمونن جي ترقي آهي. مثال طور، ڪجهه عنوانن جي متحرڪ ڪافي اشارو آهي. تسلسل - کٽ جي هيٺان.

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

تجزيي جو عمل

سمجھڻ لاءِ ته حبر ڪيئن ترقي ڪئي، اھو ضروري ھو ته پنھنجي مڙني مضمونن ۾ وڃو ۽ انھن مان ميٽا-معلومات ڪڍو (مثال طور، تاريخون). بائي پاس آسان هو، ڇاڪاڻ ته سڀني مضمونن جي لنڪ "habrahabr.ru/post/337722/" وانگر نظر اچن ٿا، ۽ انگن اکرن کي سختي سان ترتيب ڏني وئي آهي. اهو ڄاڻندي ته آخري پوسٽ جو نمبر 350 هزار کان ٿورو گهٽ آهي، مون صرف هڪ لوپ ۾ تمام ممڪن دستاويز جي سڃاڻپ (Python ڪوڊ):

import numpy as np
from multiprocessing import Pool
with Pool(100) as p:
    docs = p.map(download_document, np.arange(350000))

فعل download_document صفحي کي لاڳاپيل id سان لوڊ ڪرڻ جي ڪوشش ڪري ٿو ۽ html ساخت مان بامعني معلومات ڪڍڻ جي ڪوشش ڪري ٿو.

import requests
from bs4 import BeautifulSoup

def download_document(pid):
    """ Download and process a Habr document and its comments """
    # выгрузка документа
    r = requests.get('https://habrahabr.ru/post/' +str(pid) + '/')
    # парсинг документа
    soup = BeautifulSoup(r.text, 'html5lib') # instead of html.parser
    doc = {}
    doc['id'] = pid
    if not soup.find("span", {"class": "post__title-text"}):
        # такое бывает, если статья не существовала или удалена
        doc['status'] = 'title_not_found'
    else:
        doc['status'] = 'ok'
        doc['title'] = soup.find("span", {"class": "post__title-text"}).text
        doc['text'] = soup.find("div", {"class": "post__text"}).text
        doc['time'] = soup.find("span", {"class": "post__time"}).text
        # create other fields: hubs, tags, views, comments, votes, etc.
        # ...
    # сохранение результата в отдельный файл
    fname = r'files/' + str(pid) + '.pkl'
    with open(fname, 'wb') as f:
        pickle.dump(doc, f)

تجزيي جي عمل ۾، مون ڪيتريون ئي نيون شيون دريافت ڪيون.

پهرين، اهي چون ٿا ته پروسيسر ۾ ڪور کان وڌيڪ پروسيس ٺاهڻ بيڪار آهي. پر منهنجي صورت ۾، اهو ظاهر ٿيو ته محدود وسيلن پروسيسر نه آهي، پر نيٽ ورڪ، ۽ 100 پروسيس 4 کان وڌيڪ تيز ڪم ڪن ٿا، يا 20.

ٻيو، ڪجهه تحريرن ۾ خاص اکرن جا مجموعا هئا - مثال طور، خوشامد جهڙوڪ "%&#@". اهو معلوم ٿيو ته html.parser، جيڪو مون پهريون ڀيرو استعمال ڪيو، ميلاپ تي رد عمل &# دردناڪ طور تي، ان کي غور ڪندي html اداري جي شروعات. مان اڳ ۾ ئي ڪارو جادو ڪرڻ وارو هوس، پر فورم تجويز ڪيو ته توهان صرف پارسر تبديل ڪري سگهو ٿا.

ٽيون، مون سڀني اشاعتن کي لوڊ ڪرڻ جو انتظام ڪيو، سواء ٽن کانسواء. دستاويزن نمبر 65927، 162075، ۽ 275987 منهنجي اينٽي وائرس طرفان فوري طور تي ڊهي ويا. اهي آرٽيڪل آهن، ترتيب سان، هڪ جاوا اسڪرپٽ جي زنجير بابت جيڪي هڪ خراب پي ڊي ايف ڊائون لوڊ ڪري ٿو، ايس ايم ايس ransomware برائوزر پلگ ان جي هڪ سيٽ جي صورت ۾، ۽ CrashSafari.com سائيٽ جيڪا آئي فونز کي ريبوٽ ۾ موڪلي ٿي. Antivirus هڪ ٻيو مضمون دريافت ڪيو، بعد ۾، هڪ سسٽم اسڪين دوران: پوسٽ 338586 اسڪرپٽ بابت پالتو اسٽورن جي ويب سائيٽ تي جيڪي صارف جي پروسيسر کي استعمال ڪن ٿا cryptocurrency کان. تنهنڪري اسان سمجهي سگهون ٿا ته اينٽي وائرس جو ڪم ڪافي آهي.

"لائيو" آرٽيڪل صرف ممڪن حد کان اڌ ۾ ٿي ويا - 166307 ٽڪر. باقي بابت، Habr اختيار ڏئي ٿو "صفحو پراڻو آهي، ڊهي ويو آهي يا بلڪل موجود ناهي." خير، ڪجهه به ٿي سگهي ٿو.

مضمونن جي اپلوڊ ڪرڻ بعد ٽيڪنيڪل ڪم ڪيو ويو: مثال طور، اشاعت جي تاريخن کي "21 ڊسمبر 2006 صبح 10:47 ايم" جي شڪل ۾ تبديل ڪيو وڃي. datetime، ۽ "12,8k" نظريا - 12800 ۾. هن اسٽيج تي، ڪجهه وڌيڪ واقعا نڪتا. سڀ کان وڌيڪ مذاق ووٽن جي ڳڻپ ۽ ڊيٽا جي قسمن سان ڪرڻو آهي: ڪجهه پراڻن پوسٽن ۾ انٽ اوور فلو هو ۽ هر هڪ کي 65535 ووٽ مليا.

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

نتيجي طور، مضمونن جي نصوص (تصويرن کان سواء) مون کي 1.5 گيگا بائيٽ ورتو، ميٽا-معلومات سان تبصرو - ٻيو 3، ۽ اٽڪل سؤ ميگا بائيٽ - آرٽيڪل بابت ميٽا ڄاڻ. اهو مڪمل طور تي رام ۾ رکي سگهجي ٿو، جيڪو مون لاء هڪ خوشگوار تعجب هو.

مون مضمونن جي تجزيي جي شروعات ڪئي آهي نصوص مان نه، پر ميٽا-معلومات کان: تاريخون، ٽيگ، مرڪز، نظريا ۽ پسند. اهو ظاهر ٿيو ته هوء گهڻو ڪجهه ٻڌائي سگهي ٿي.

Habrahabr ترقي جي رجحانات

سائيٽ تي آرٽيڪل 2006 کان شايع ڪيا ويا آهن؛ سڀ کان وڌيڪ شدت سان - 2008-2016 ۾.

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

مختلف وقتن تي اهي آرٽيڪل ڪيتري قدر فعال طور تي پڙهيا ويا، ان جو اندازو لڳائڻ ايترو آسان ناهي. 2012 کان ننڍي عمر جي متنن کي وڌيڪ تبصرا ۽ درجه بندي ملي ٿي، پر نئين نصوص کي وڌيڪ نظريا ۽ بک مارڪس مليا آهن. اهي ميٽرڪس ساڳئي طريقي سان (اڌ ۾) صرف هڪ ڀيرو، 2015 ۾. شايد، معاشي ۽ سياسي بحران جي صورتحال ۾، پڙهندڙن جو ڌيان آئي ٽي بلاگز کان وڌيڪ دردناڪ مسئلن ڏانهن منتقل ڪيو ويو آهي.

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

پاڻ آرٽيڪلن کان علاوه، مون انهن تي وڌيڪ رايا ڊائون لوڊ ڪيا. اتي 6 ملين تبصرا هئا، جڏهن ته، انهن مان 240 هزار تي پابندي لڳائي وئي ("هڪ UFO پرواز ڪيو ۽ هن لکت کي هتي شايع ڪيو"). تبصرن جي هڪ مفيد ملڪيت اها آهي ته انهن وٽ هڪ ٽائيم اسٽاپ آهي. تبصرن جي وقت جي مطالعي سان، توهان تقريبا سمجهي سگهو ٿا جڏهن آرٽيڪل پڙهي رهيا آهن.

معلوم ٿيو ته اڪثر مضمون صبح 10 وڳي کان رات 20 وڳي تائين لکيل ۽ تبصرا ڪيا ويندا آهن، يعني. هڪ عام ماسڪو ڪم ڏينهن تي. هن جو مطلب اهو ٿي سگهي ٿو ته حبر کي پيشه ورانه مقصدن لاءِ پڙهيو وڃي ٿو، ۽ اهو ڪم تي دير ڪرڻ جو سٺو طريقو آهي. اهڙيءَ طرح، زماني جي اها تقسيم حبر جي بنياد کان وٺي اڄ تائين قائم آهي.

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

بهرحال، تبصرو ٽائم اسٽيمپ جو بنيادي فائدو ڏينهن جو وقت نه آهي، پر آرٽيڪل جي "فعال زندگي" جي مدت. مون اندازو لڳايو ته مضمون جي اشاعت کان وٺي ان جي تبصري تائين وقت ڪيئن ورهايو ويو آهي. اهو ظاهر ٿيو ته هاڻي وچين تبصرو (سبز لائن) تقريبا 20 ڪلاڪن ۾ اچي ٿو، يعني. اشاعت کان پوء پهرين ڏينهن تي، سراسري طور تي، آرٽيڪل تي سڀني تبصرن جي اڌ کان وڌيڪ رهجي ويا آهن. ۽ ٻن ڏينهن ۾ اهي سڀ تبصرن جو 75٪ ڇڏيندا آهن. ساڳئي وقت، اڳوڻو آرٽيڪل اڃا به تيز پڙهيا ويا - مثال طور، 2010 ۾، اڌ رايا پهرين 6 ڪلاڪن ۾ آيا.

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

اها ڳالهه مون لاءِ حيران ڪندڙ ڳالهه آهي ته تبصرا ڊگھا ٿي ويا آهن: هڪ تبصري ۾ ڪردارن جو سراسري تعداد حبر جي زندگيءَ ۾ لڳ ڀڳ ٻيڻو ٿي ويو آهي!

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

رايا کان وڌيڪ آسان راءِ ووٽ آهن. ٻين ڪيترن ئي وسيلن جي برعڪس، Habré تي توهان صرف نه صرف پلس، پر مائنس پڻ رکي سگهو ٿا. بهرحال، پڙهندڙ آخري موقعو استعمال نه ڪندا آهن گهڻو ڪري: ناپسنديده جو موجوده حصيداري سڀني ووٽن جو تقريبا 15٪ آهي. اڳي گهڻو هوندو هو، پر وقت گذرڻ سان گڏ پڙهندڙ به مهربان ٿيندا ويا آهن.

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

نصوص پاڻ وقت سان تبديل ٿي ويا آهن. مثال طور، متن جي عام ڊگھائي، بحرانن جي باوجود، سائيٽ جي تمام لانچ کان مسلسل وڌڻ بند نه ٿي. هڪ ڏهاڪي ۾، نصوص تقريبا ڏهه ڀيرا ٿي ويا آهن!

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

نصوص جو انداز (پهرين تقريبن تائين) پڻ تبديل ٿي ويو. حبر جي وجود جي پهرين سالن دوران، مثال طور، نصوص ۾ ڪوڊ ۽ انگن جو حصو وڌي ويو:

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

سائيٽ جي مجموعي متحرڪ کي سمجهڻ کان پوء، مون اندازو ڪرڻ جو فيصلو ڪيو ته مختلف عنوانن جي مقبوليت ڪيئن تبديل ٿي. مضمونن مان خود بخود چونڊجي سگھجن ٿا، پر شروعات ڪندڙن لاءِ، توھان ڦيٿي کي نئين سر ايجاد نٿا ڪري سگھو، پر ھر مضمون جي ليکڪن پاران لڳل تيار ٿيل ٽيگ استعمال ڪريو. مون چارٽ تي چار عام رجحان ٺاھيا آھن. "گوگل" موضوع شروعاتي طور تي غلبو (شايد خاص طور تي ايس اي او جي ڪري)، پر سالن کان وزن وڃائي رهيو آهي. جاوا اسڪرپٽ هڪ مشهور موضوع رهيو آهي ۽ آهستي آهستي وڌندو رهي ٿو، پر مشين لرننگ صرف تازو سالن ۾ تيزيءَ سان مقبوليت حاصل ڪرڻ شروع ڪئي آهي. لينڪس، ٻئي طرف، سڄي ڏهاڪي ۾ هڪجهڙائي سان لاڳاپيل رهيو آهي.

ڪيئن مون حبر جو تجزيو ڪيو، حصو 1: رجحانات

يقينن، مون کي دلچسپي ورتي ته ڪهڙا موضوع وڌيڪ پڙهندڙن جي سرگرمي کي راغب ڪن ٿا. مون هر موضوع ۾ نظرين، ووٽن ۽ تبصرن جو وچين انگ حساب ڪيو. هتي ڇا ٿيو آهي:

  • سڀ کان وڌيڪ ڏٺل موضوع: arduino، ويب ڊيزائن، ويب ڊولپمينٽ، ڊائجسٽ، لنڪس، سي ايس ايس، html، html5، nginx، algorithms.
  • سڀ کان وڌيڪ "پسند" موضوع: vkontakte، مزاح، jquery، opera، c، html، ويب ڊولپمينٽ، html5، css، ويب ڊيزائن.
  • سڀ کان وڌيڪ بحث ڪيل موضوع: اوپرا، اسڪائپ، فري لانس، ويڪونٽيڪ، اوبنٹو، ڪم، نوڪيا، نينڪس، آرڊينو، فائر فاکس.

رستي ۾، جيئن ته آئون عنوانن جو مقابلو ڪري رهيو آهيان، توهان انهن کي تعدد جي لحاظ کان درجه بندي ڪري سگهو ٿا (۽ نتيجن جو مقابلو ڪريو ساڳئي مضمون 2013 کان).

  • هبر جي وجود جي سڀني سالن تائين، سڀ کان وڌيڪ مشهور ٽيگ (گهٽندي ترتيب ۾) گوگل، اينڊرائيڊ، جاوا اسڪرپٽ، مائڪروسافٽ، لينڪس، پي ايڇ، ايپل، جاوا، پٿون، پروگرامنگ، شروعاتي، ترقي، آئي او ايس، شروعاتي، سماجي نيٽ ورڪ آهن.
  • 2017 ۾، سڀ کان وڌيڪ مشهور هئا جاوا اسڪرپٽ، پٿون، جاوا، اينڊرائيڊ، ڊولپمينٽ، لينڪس، سي++، پروگرامنگ، پي ايڇ پي، سي #، آئي او ايس، مشين لرننگ، انفارميشن سيڪيورٽي، مائڪروسافٽ، ري ايڪٽ.

جڏهن انهن درجه بندي جي مقابلي ۾، هڪ ڌيان ڏئي سگهي ٿو، مثال طور، پٿون جي فتح واري مارچ ۽ php جي ختم ٿيڻ تي، يا شروعاتي عنوانن جي "غروب" ۽ مشين جي سکيا جي عروج ڏانهن.

Habré تي سڀئي ٽيگ نه آھن ھڪڙو واضح موضوعي رنگ. مثال طور، هتي درجن وارا ٽيگ آهن جيڪي صرف هڪ ڀيرو ملن ٿا، پر صرف مون کي عجيب لڳي. تنهن ڪري: ”خيال ترقيءَ جو محرڪ آهي“، ”فلاپي ڊسڪ جي تصوير مان بوٽ“، ”آئوا اسٽيٽ“، ”ڊراما“، ”سپرليش“، ”اسٽيم انجڻ“، ”ڇنڇر تي ڪم ڪرڻ جون شيون“، ”مون وٽ آهي. گوشت جي چکی ۾ لومڙي، "هميشه وانگر اهو نڪتو"، "اسان مسڪين ٽيگ سان نه اچي سگهياسين". اهڙن مضمونن جي موضوع کي طئي ڪرڻ لاء، ٽيگ ڪافي نه آهن - توهان کي مضمونن جي نصوص تي موضوعاتي ماڊلنگ ڪرڻو پوندو.

مضمونن جي مواد جو وڌيڪ تفصيلي تجزيو ايندڙ پوسٽ ۾ ڪيو ويندو. پهريون، مان هڪ ماڊل ٺاهڻ وارو آهيان جيڪو اڳڪٿي ڪري ٿو صفحي جي نظرن جو تعداد هڪ مضمون جي مواد جي بنياد تي. ٻيو، مان نيرل نيٽ ورڪ کي سيکارڻ چاهيان ٿو متن کي ساڳئي انداز ۾ پيدا ڪرڻ لاءِ جيئن حبر جي ليکڪن. سو رڪنيت حاصل ڪريو 🙂

پي ايس ۽ هتي بيپ آهي ڊيٽا سيٽ.

جو ذريعو: www.habr.com

تبصرو شامل ڪريو