Hauv qab no kuv yuav siv lo lus "Karma" rau karma, thiab lo lus "Score" lossis "Tag Nrho Score" rau tag nrho cov txiaj ntsig thiab qhov tsis zoo uas tus neeg siv tau txais, ob qho tib si rau cov ntawv thiab cov lus pom.
Muaj kev cuam tshuam nrog keeb kwm, peb yuav sim saib cov lej. Tsis ntev los no muaj tag nrho cov kev txheeb xyuas txheeb cais, tab sis nws tsuas yog cuam tshuam rau xyoo tam sim no - Kuv yuav tsum nkag siab txog tag nrho cov neeg siv kev ntsuas. Txij li thaum peb tsis muaj API, thiab hloov qhov kev ntaus nqi tiag tiag, qhov profile qhia qhov kev ntsuam xyuas tsis zoo, txhua yam kuv yuav tsum tau ua yog kawm txhua qhov kev tawm tswv yim thiab sau cov ntaub ntawv hais txog tus sau thiab ntsuas los ntawm nws. Qhov ntawd yog qhov kuv ua.
Kuv qhib txhua qhov kev tshaj tawm txij thaum pib ntawm lub sijhawm, coj tawm ntawm nws lub npe menyuam yaus ntawm tus sau ntawv tshaj tawm thiab kev ntaus nqi ntawm tsab xov xwm, thiab tom qab ntawd cov npe menyuam yaus ntawm cov neeg tawm tswv yim thiab kev ntaus nqi ntawm lawv cov lus.
Ntawm no yog lub ntsiab parser code.
import requests
from bs4 import BeautifulSoup
import csv
def get_doc_by_id(pid):
fname = r'files/' + 'habrbase' + '.csv'
with open(fname, "a", newline="") as file:
try:
writer = csv.writer(file)
r = requests.head('https://habr.com/ru/post/' +str(pid) + '/')
if r.status_code == 404: # ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅
pass
else:
r = requests.get('https://habr.com/ru/post/' +str(pid) + '/')
soup = BeautifulSoup(r.text, 'html5lib')
if not soup.find("span", {"class": "post__title-text"}):
pass
else:
doc = []
cmt = []
doc.append(pid) #Π½ΠΎΠΌΠ΅Ρ
doc.append(soup.find("span", {"class": "user-info__nickname"}).text) #Π½ΠΈΠΊ
doc.append(soup.find("span", {"class": "voting-wjt__counter"}).text) #ΡΡΠ΅ΡΡΠΈΠΊ
writer.writerow(doc)
comments = soup.find_all("div", {"class": "comment"})
for x in comments:
if not x.find("div", {"class": "comment__message_banned"}):
cmt.append(x['id'][8:]) #Π½ΠΎΠΌΠ΅Ρ
cmt.append(x.find("span", {"class": "user-info__nickname"}).text) #Π½ΠΈΠΊ
cmt.append(x.find("span", {"class": "voting-wjt__counter"}).text) #ΡΡΡΡΡΠΈΠΊ
writer.writerow(cmt)
cmt = []
except requests.exceptions.ConnectionError:
pass
x = int(input())
y = int(input())
for i in range(x, y):
get_doc_by_id(i)
print(i)
Qhov tshwm sim yog cov lus hauv qab no hauv cov ntaub ntawv habrbase:
Kuv pab pawg neeg siv thiab tau txais cov txiaj ntsig hauv daim ntawv "Tus Neeg Siv - Qhov txiaj ntsig ntawm nws qhov kev ntaus nqi" hu ua habrauthors.csv. Tom qab ntawd kuv pib mus los ntawm cov neeg siv no thiab ntxiv cov ntaub ntawv los ntawm lawv qhov profile. Txij li qee zaum qhov kev sib txuas tuaj yeem tawg, lossis qee qhov yuam kev txawv txawv yuav tshwm sim thaum thauj nplooj ntawv, kuv yuav tsum tau saib tus neeg siv twg tau ua tiav kawg thiab txuas ntxiv los ntawm qhov ntawd.
Muaj ntau qhov kev kuaj xyuas nyob ntawd, vim tias muaj ntau yam coj txawv txawv tshwm sim ntawm nplooj ntawv Habr, pib nrog cov lus tshem tawm thiab xaus nrog qee cov neeg siv tsis paub. Piv txwv li, xyoo kev sau npe xyoo 2001 tshwm sim hauv kuv tus qauv li cas? Txhawm rau sau cov neeg siv cov ntaub ntawv, kuv tau txheeb xyuas lub xov tooj ntawm lub vev xaib, thiab rau qee tus neeg siv cov ntawv no tsis tsuas yog tshaj tawm tias tus neeg siv tau raug tshem tawm, tab sis kuj qhia cov lus hauv qab no: "Internal yuam kev (tus nqi nruab nrab).map tsis muaj nuj nqi. β Tag nrho cov lus tseem nyob, ob qho tib si tshem tawm thiab nyeem tsis tau, yog li kuv tau teem sijhawm rau npe rau xyoo 2001. Tom qab ntawd, kuv pom tias qee tus ntawm cov neeg siv no pom nyob rau hauv lub vev xaib tsis tu ncua - yog tias lawv tsis raug tshem tawm lossis thaiv. Tab sis txij li muaj tsuas yog 250 ntawm lawv, thiab ib nrab ntawm lawv tsis muaj lawm, kuv txiav txim siab kom tsis txhob kov lawv.
Qhov kawg version ntawm cov lus habrdata zoo li no: ['nick', 'scores', 'karma', 'comments','articles','regdate']. Koj muaj peev xwm download tau nws no.
Thiab qhov no yog li cas lawv faib los ntawm hnub sau npe. Kuv xav hais tias nyob rau lub sij hawm ntev muaj qee qhov kev poob qis hauv kev sau npe.
Xyoo sau npe
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
Cov neeg siv
2045
11668
12463
5028
5346
13686
11610
9614
9703
6594
8926
7825
5912
3673
Nyob rau hauv tag nrho, peb muaj 114 cov neeg siv uas tau sau cov lus lossis cov lus. Cia peb pom dab tsi karma thiab kev ntsuas ntsuas zoo li rau cov neeg siv:
Los ntawm txoj kev, ua tsaug rau qhov pom zoo rau cov duab no tabloo.
Peb muaj cov outliers vwm, koj tuaj yeem pom lawv ntawm daim duab. Cia peb hais tus neeg siv alizar (UPD) rau tag nrho nws cov lus thiab tshaj tawm nws tau txais ntau dua 268 txhiab pluses! Thiab nws floats nyob rau hauv no stratosphere kiag li ib leeg, tus so ntawm ntau dua los yog tsawg cov neeg vam meej dai tawm ntawm qhov siab ntawm txog 30 txhiab. Nws yog tib zaj dab neeg nrog karma - tus neeg siv Zelenyikot karma yog 1509, thiab lub neej txhua hnub pib qhov chaw ntawm 500. Kuv tsis tau txiav cov qauv, Kuv tsuas yog coj cov duab los ze zog me ntsis kom koj tuaj yeem saib ze dua ntawm kev faib cov neeg siv tib yam.
Ntawm no, ntawm qhov kev thov ntawm cov neeg ua haujlwm, TOP 10 cov neeg siv los ntawm cov cim tseem ceeb tau ntxiv
Kev soj ntsuam ceev ntawm tag nrho cov ntim ntawm cov neeg siv qhia peb tias tsis muaj kev sib raug zoo, xws li hauv daim ntawv ntshiab lossis nrog kev txiav tawm, yog li kuv yuav tsis nyob ntawm qhov no. Nws yuav nthuav kom twirl nonlinear dependencies los yog saib seb peb puas muaj tej pawg. Tau kawg, kuv yuav tsis ua txhua yam no - leej twg tuaj yeem rub tawm CSV thiab kho nws hauv R lossis SPSS. Kuv mam li mus ncaj nraim rau qhov thab kuv - cov neeg uas muaj cov qhab nia zoo tab sis cov qhab nia tsis zoo (thiab rov ua dua). Peb muaj 4235 cov neeg siv ntawm cov darlings. Ntawm no lawv nyob ntawm daim duab. 2866 cov neeg siv ntawm lawv rov qab kuv txoj kev, muaj pluses hauv kev ntaus nqi, tab sis minuses hauv karma.
3-4 txhiab tawm ntawm 114 zoo li yog ib tug frivolous daim duab, nyob rau hauv lub margin ntawm yuam kev. Los ntawm txoj kev, txhua tus neeg siv uas muaj qhov tsis zoo karma yog nyob rau hauv tib qhov yuam kev. Muaj tsuas yog 4652 ntawm lawv, tab sis cia saib cov ntaub ntawv tsis yog los ntawm qhov deb, raws li cov neeg txheeb cais nyiam ua, tab sis raws li tib neeg.
78205 cov neeg siv los ntawm 114 343 muaj tag nrho cov qhab nia siab dua 0. Qhov no yog li cas lawv cov ntawv thiab cov lus raug soj ntsuam, uas yog, kev ua tau zoo rau kev sau lub portal. 24 896 cov neeg siv los ntawm 114 343 muaj lub cib fim pov npav. Qhov no yog li cas lawv tus cwj pwm raug soj ntsuam, uas yog, txawm tias cov neeg tuaj yeem pov npav zoo li lawv tus kheej lossis tsis.
Nyob rau tib lub sijhawm, saib daim duab ntawm karma nyob ntawm lub xyoo sau npe. Muaj coob tus neeg hais tias peb muaj hazing - yog, qhov ntawd yog qhov nws yog. Hauv nws daim ntawv ntshiab, zoo li hauv blockchain. Cov txiv neej no tau pib ua ntej, ntau xyoo lawv tau mined karma rau lawv tus kheej, thiab tam sim no nws yog los ntawm lawv uas koj pheej hnov ββββ"Kuv tsis mob siab rau karma thiab kuv tsis qhia koj."
Nyob rau tib lub sijhawm, rau caum txhiab tus neeg tuaj yeem, hauv paus ntsiab lus, sau cov khoom nthuav lossis muaj txiaj ntsig, tau txais kev tshuaj xyuas zoo, tab sis tib lub sijhawm yuav tsum tau saib ib puag ncig kom lawv tsis txhob flogged rau lawv txoj kev xav tsis zoo.
Tag nrho:
Tus neeg tawm tswv yim yog, hauv paus ntsiab lus, tsis yog ib feem ntawm lub zej zog, txawm tias nws txhim kho thiab txhawb nqa.
Nrog rau 1/3 qhov tshwm sim, tus sau ntawm cov khoom kuj tsis yog ib feem ntawm lub zej zog, txawm tias nws txhim kho thiab txhawb nqa.
Txawm hais tias kev nqis tes ua los txhim kho thiab txhawb lub zej zog tau pom zoo los ntawm cov pluses, tus sau tseem tuaj yeem raug thaiv los ntawm ib feem me me ntawm cov neeg siv (lus 10-20 tus neeg tawm ntawm ntau txhiab)
Thaum kuv tab tom npaj tsab xov xwm no rau kev tshaj tawm, ib lub ntsiab lus tshiab tau tshwm sim ntawm lub ntsiab lus zoo sib xws. Raws li xav tau, kev sib tham txog karma pib hauv cov lus, thiab lwm qhov kev txiav txim siab pom tseeb:
Koj tuaj yeem hno ntau npaum li koj nyiam ntawm cov neeg tawm tswv yim uas tau degraded cov peev txheej, tab sis ... Tab sis lawv tsis tuaj yeem ua dab tsi ntawm lub hub:
β lawv tsis yog cov uas sau ntawv phem.
- lawv tsis yog cov uas pov npav rau cov ntawv sau rov qab ntawm houtushkas uas tsis muaj kev nkag siab txog cov lus txib zoo li cas thiab vim li cas lawv thiaj nkag mus rau ntawd
- lawv tsis yog cov uas pov npav rau karma ntawm hype xov xwm sau ntawv
- lawv tsis yog cov uas ntsuas qhov tseeb ntawm lwm tus txoj kev xav
Lawv tsis tuaj yeem txhawb cov kws sau ntawv thiab qhia lawv txoj kev hwm hauv txhua txoj kev, tsuas yog cov lus pom.
Thiab lawv tsis tuaj yeem tiv thaiv lawv tus kheej los ntawm lwm tus.
Txhua yam uas tshwm sim ntawm lub hub yog ua hauj lwm ntawm cov neeg uas muaj ib tsab xov xwm thiab karma. https://habr.com/ru/post/467875/#comment_20639397
Zoo, peb tau txiav txim siab seb leej twg yuav liam, cia saib yog vim li cas txhua qhov no tshwm sim.
Qhov twg nws tua koj
Yog tias txhua tus neeg tuaj yeem koom nrog kev tswj hwm ncaj qha, peb yuav tswj hwm dab tsi? German Gref
Raws li koj nkag siab los ntawm cov lus hais saum toj no, qhov teeb meem tseem ceeb ntawm karma tsis tau hloov ntau xyoo. Qhov teeb meem no tsis yog kev txawj, tab sis kev puas siab puas ntsws (tej zaum yog vim li cas nws tseem tsis tuaj yeem daws tau ntawm cov peev txheej technical).
Cia peb saib nws cov ntsiab lus tseem ceeb thiab txheeb xyuas lawv kom ntxaws ntxiv.
Karma tsis nyob ntawm qhov ua tau zoo ntawm qhov chaw
Karma yog psychologically asymmetrical
Karma condones sociopathy
Nqe lus 1.
Qhov no yog tib qho teeb meem. uas kuv pib kuv tsab xov xwm: ib tug downtrodden tus neeg yuav xaus nrog leaked karma. Yog tias peb tsis quav ntsej txog ntau yam me me, xws li cov qauv rau kev suav cov kev ntsuas, peb yuav pom qhov sib txawv tseem ceeb ntawm Habr thiab tag nrho lwm qhov chaw: kev faib cov neeg siv thiab cov neeg siv ua haujlwm rau hauv ob lub koom haum ywj pheej.
Cov tswv yim zoo tshaj plaws thiab kev nkag siab zoo li no: tus neeg siv yog tus account, nkag, cov lus sau los ntawm tus account no, "vwm" cov duab lossis cov duab raug muab tso tawm. Tus neeg siv yog nws qhov kev ua. Lwm tus account nyiam lossis tsis nyiam cov ntawv tshaj tawm thiab cov duab no. Cov txiaj ntsig ntawm kev nyiam thiab tsis nyiam txiav txim siab qhov zoo ntawm cov lus thiab tus account nws tus kheej. Lawv yog inextricably txuas.
Txhua yam yog tsis tseem ceeb. Qee qhov xwm txheej, cov neeg pov npav tau raug txwv, lwm qhov lawv tsis yog. Ntawm qee qhov portals, txhawm rau muab qhov ntsuas, koj yuav tsum tau muaj qhov ntsuas siab; ntawm lwm tus, tsis yog. Qee lub sij hawm cov neeg sau ntawv ntawm qhov ntsuas tau tshwm sim, qee zaum lawv tau muab zais. Tab sis tsis muaj qhov twg yog qhov ua tau rau ib tus neeg los tshaj tawm ntau cov lus tshaj tawm, cov lus pom, cov duab - thiab tib lub sijhawm tswj hwm qhov ntsuas siab; zoo li vice versa - yog hais tias tus neeg siv cov posts yog downvoted los ntawm cov nyeem, ces tus neeg siv yuav tsis raug txwv los ntawm lawv, vim hais tias lawv nyiam qhov nws ua. Thiab qhov no tshwm sim vim qhov tseeb tias tus neeg siv cov kev ua ntawm lub xaib thiab nws tus account yog ib qho thiab tib yam. Koj cov yeeb yam yog qhov ntxiv, uas txhais tau tias lawv yog qhov ntxiv rau koj. Koj qhov kev ua yog rho tawm, uas txhais tau tias lawv yog rho tawm koj thiab.
Qhov thib ob distortion yog qhov tshwm sim ntawm ib pawg neeg txiav txim. Kuv ceeb toom rau koj tias feem ntau qhov kev ncaj ncees yog "txhua tus neeg siv txiav txim rau txhua tus neeg siv", txhua tus tsuas yog ntsuas cov ntawv thiab cov lus ntawm lwm tus. Tab sis cov thawj coj ntawm Habr txhawj xeeb heev txog cov neeg sau ntawv, leej twg tuaj yeem ua tau zoo hauv cov teeb meem kev kawm, tab sis txaus ntshai hauv kev sib raug zoo nrog cov neeg tawm tswv yim. Thiab cov kws sau ntawv tau muab carte blanche; txij no mus lawv tuaj yeem liam tias tsuas yog txiav txim los ntawm lwm tus kws sau ntawv.
Tseeb tiag, peb tuaj yeem pom cov txheej txheem zoo li no hauv ntau qhov kev sib tw sau ntawv, piv txwv li: txhua tus sau lawv tus kheej zaj dab neeg, txhua tus nyeem cov dab neeg ntawm lwm tus thiab muab txhua qib. Qhov no kuj yog ib qho kev ncaj ncees.
Muaj qhov kev xav tsis meej uas ntau tus neeg siv yuav ua kom zoo dua qhov kev ntaus nqi. Qhov no tsis yog lawm. Txij li cov kws txiav txim plaub tuaj yeem hloov pauv karma tib yam li lawv tus kheej, sai lossis tom qab cov neeg uas tsis xav tau ya tawm ntawm pawg neeg no, thiab cov neeg uas obsequious, ntawm qhov tsis sib xws, xaus rau hauv nws.
Raws li koj tuaj yeem pom, tus neeg ua haujlwm ruaj khov thiab ua siab dawb ntseeg tias karma tiag tiag cuam tshuam txog kev muaj txiaj ntsig ntawm tus neeg tshaj tawm thiab cov lus pom. Cov neeg tuaj ntawm qhov twg uas muaj tag nrho cov qhab nia ntawm +100 thiab karma ntawm -10? Thiab yog vim li cas muaj coob tus neeg nrog xws li ib tug deviation? Tej zaum ntau txhiab tus neeg siv tshaj tawm cov dej nyab thiab cov lus tsis muaj peev xwm, tau txais cov minuses hauv karma rau qhov no, tab sis tom qab ntawd qee tus wizard tuaj txog thiab muab pluses rau tib cov dej nyab thiab cov lus tsis muaj peev xwm siv cov kev ntaus nqi zoo tib yam? Tau kawg tsis.
Qhov muaj txiaj ntsig ntawm cov lus thiab cov ntawv tsuas yog qhia los ntawm kev ntaus nqi ntawm ib sab ntawm cov lus thiab cov ntawv. Thiab karma qhia txog dab tsi phem los yog zoo nws yog ib tug neeg raws li kev xaiv tsa. Saum toj no peb tau tham txog vim li cas tib neeg yuav siv zog ntau dua los ua kev puas tsuaj phem yuav ua li cas pab ib tug neeg zoo. Yog li kev ua tiav phem tib neeg nyob rau hauv xws li ib tug system yog statistically inevitable. Tsis ntev los sis tom qab lawv yuav tua tag nrho cov "phem" ib txwm, ces lawv yuav pib nrhiav "tsawg kawg" zoo, thiab lwm yam, thiab lwm yam.
Thov nco ntsoov tias tag nrho cov teeb meem no yog los ntawm kev tswj hwm qhov tsis muaj peev xwm nkag siab thiab suav cov neeg ua haujlwm. Los ntawm kev tsom mus rau sab kev tshaj lij ntawm cov khoom, lawv tau pom tag nrho ntawm kev sib raug zoo. Kwv yees li tib neeg tsim lub ntiaj teb-25, thiab tom qab ntawd tau ntau xyoo lawv sim qhia txhua tus tias muaj lub vaj kaj siab nyob ntawd. Qee tus neeg tseem ntseeg qhov no, ib yam li lawv ntseeg tias "kev ua haujlwm ua rau Habr zoo dua." Qhov phem tshaj plaws ntawm no, tau kawg, yog cov thawj coj thiab ntau tus neeg koom tsis nkag siab qhov tsis raug ntawm no. Yog lawm, lawv hais tias, tib neeg yeej zoo thiab phem. Yog li cia txhua tus zoo sib sau ua ke thiab tua txhua tus phem! Thiab lawv tua nrog kev txaus siab.