Inona no mety hitranga amin'ny Data Science? Fanangonana angona

Inona no mety hitranga amin'ny Data Science? Fanangonana angona
Amin'izao fotoana izao dia misy 100500 ny fampianarana Data Science ary efa ela no fantatra fa ny vola be indrindra amin'ny Data Science dia azo amin'ny alΓ lan'ny fianarana Data Science (maninona no mihady nefa afaka mivarotra angady?). Ny tsy fahampiana lehibe amin'ireo taranja ireo dia ny tsy fisian'ny asa tena izy ireo: tsy misy olona hanome anao angona madio sy voavoatra amin'ny endrika takiana. Ary rehefa miala amin'ny fianarana ianao ary manomboka mamaha olana tena izy, dia maro ny nuances mipoitra.

Noho izany, manomboka andian-tsoratra izahay "Inona no mety hitranga amin'ny Siansa Data", mifototra amin'ny zava-nitranga tena nisy tamiko sy ny namako ary ny mpiara-miasa amiko. Hamakafaka ireo asa mahazatra momba ny Siansa Data isika amin'ny fampiasana ohatra tena izy: ahoana no tena nitrangan'izany. Andao hanomboka anio amin'ny asa fanangonana angona.

Ary ny zavatra voalohany manafintohina ny olona rehefa manomboka miasa amin'ny angon-drakitra tena izy dia ny fanangonana an'io data io izay manan-danja indrindra amintsika. Ny hafatra fototra amin'ity lahatsoratra ity:

Manamaivana ny fotoana sy ny loharanon-karena ary ny ezaka ilaina amin'ny fanangonana, fanadiovana ary fanomanana angona izahay.

Ary ny tena zava-dehibe dia hodinihintsika izay tokony hatao hisorohana izany.

Araka ny tombantombana isan-karazany, ny fanadiovana, ny fanovana, ny fanodinana angon-drakitra, ny injeniera amin'ny endri-javatra, sns dia maka 80-90% amin'ny fotoana, ary 10-20% ny famakafakana, raha toa kosa ny fitaovana fanabeazana rehetra dia mifantoka manokana amin'ny fanadihadiana.

Andeha hojerentsika ny olana famakafakana tsotra amin'ny dikan-teny telo ho ohatra mahazatra ary hojerentsika ny atao hoe "toe-javatra mampahatahotra".

Ary ho ohatra, indray, dia handinika fiovaovana mitovy amin'ny asa fanangonana angona sy fampitahana vondrom-piarahamonina ho an'ny:

  1. Reddit roa subreddits
  2. Fizarana roa amin’ny Habr
  3. Vondrona roa an'ny Odnoklassniki

Fomba fiasa misy fepetra amin'ny teoria

Sokafy ny tranokala ary vakio ny ohatra, raha mazava izany, manokano ora vitsivitsy ho an'ny famakiana, ora vitsivitsy ho an'ny code mampiasa ny ohatra sy ny debugging. Ampio ora vitsivitsy ho an'ny fanangonana. Atsipazo ao anaty tahiry mandritra ny ora vitsivitsy (ampitomboy roa ary ampio N ora).

Hevi-dehibe: Ny fanombanana ny fotoana dia mifototra amin'ny vinavina sy ny vinavina momba ny faharetan'ny fotoana.

Ilaina ny manomboka ny famakafakana ny fotoana amin'ny fanombantombanana ireto mari-pamantarana manaraka ireto ho an'ny olana misy fepetra voalaza etsy ambony:

  • Inona ny haben'ny angon-drakitra ary firy amin'izy io no mila angonina ara-batana (*jereo eto ambany*).
  • Inona ny fotoana fanangonana ho an'ny rakitsoratra iray ary hafiriana no tsy maintsy miandry vao afaka manangona ny faharoa?
  • Eritrereto ny fanoratana kaody izay mamonjy ny fanjakana ary manomboka restart rehefa tsy nahomby ny zava-drehetra (tsy raha).
  • Fantaro raha mila fanomezan-dΓ lana isika ary mametra ny fotoana hahazoana fidirana amin'ny alΓ lan'ny API.
  • Mametraka ny isan'ny lesoka ho toy ny fiasan'ny angon-drakitra sarotra - manombana ny asa manokana: rafitra, firy ny fiovana, inona ary ny fomba hanesorana.
  • Amboary ny lesoka amin'ny tambajotra sy ny olana amin'ny fitondran-tena tsy manara-penitra.
  • Tombano raha ao anatin'ny antontan-taratasy ireo asa ilaina ary raha tsy izany dia ahoana ary ohatrinona no ilaina amin'ny famahana olana.

Ny zava-dehibe indrindra dia ny hoe mba hanombanana ny fotoana - tena mila mandany fotoana sy ezaka amin'ny "reconnaissance in force" ianao - amin'izay fotoana izay dia ho ampy ny drafitrao. Noho izany, na manao ahoana na manao ahoana ny hanosehana anao hiteny hoe "mandra-pahoviana ny fanangonana angon-drakitra" - mividiana fotoana kely ho an'ny famakafakana mialoha ary miady hevitra amin'ny fiovaovan'ny fotoana arakaraka ny tena mason'ny olana.

Ary ankehitriny isika dia hampiseho ohatra manokana izay hiova ny paramètre toy izany.

Hevi-dehibe: Ny tombantombana dia mifototra amin'ny famakafakana ireo lafin-javatra lehibe misy fiantraikany amin'ny sehatra sy ny fahasarotan'ny asa.

Ny fanombantombanana mifototra amin'ny vinavina dia fomba tsara rehefa kely ny singa miasa ary tsy misy antony maro mety hisy fiantraikany lehibe amin'ny famolavolana ny olana. Saingy amin'ny trangan'ny olana momba ny Siansa Data, dia lasa maro be ny anton-javatra toy izany ary lasa tsy ampy ny fomba fiasa toy izany.

Fampitahana ny vondrom-piarahamonina Reddit

Andeha isika hanomboka amin'ny tranga tsotra indrindra (araka ny hita any aoriana). Amin'ny ankapobeny, raha ny marina, manana tranga saika mety tsara isika, andeha hojerentsika ny lisitry ny fahasarotana:

  • Misy API madio sy mazava ary voarakitra an-tsoratra.
  • Tena tsotra izany ary ny tena zava-dehibe dia azo avy hatrany ny famantarana iray.
  • Misy fonosana python - misy ohatra maro.
  • Vondrom-piarahamonina manadihady sy manangona angona ao amin'ny reddit (eny fa na dia amin'ny horonan-tsary YouTube manazava ny fomba fampiasana fonosana python aza) Ohatra.
  • Ny fomba ilaintsika dia azo inoana fa misy ao amin'ny API. Ankoatr'izay, ny kaody dia toa mirindra sy madio, eto ambany ny ohatra iray amin'ny asa iray manangona fanehoan-kevitra amin'ny lahatsoratra.

def get_comments(submission_id):
    reddit = Reddit(check_for_updates=False, user_agent=AGENT)
    submission = reddit.submission(id=submission_id)
    more_comments = submission.comments.replace_more()
    if more_comments:
        skipped_comments = sum(x.count for x in more_comments)
        logger.debug('Skipped %d MoreComments (%d comments)',
                     len(more_comments), skipped_comments)
    return submission.comments.list()

Nalaina avy amin'ny izany fifantenana fitaovana mety amin'ny famonosana.

Na dia eo aza ny zava-misy fa ity no tranga tsara indrindra, dia mbola ilaina ny mandinika lafin-javatra manan-danja maromaro avy amin'ny tena fiainana:

  • Ny fetran'ny API - voatery maka angon-drakitra izahay (matory eo anelanelan'ny fangatahana, sns.).
  • Fotoana fanangonana - ho an'ny famakafakana sy fampitahana feno dia tsy maintsy manokana fotoana manan-danja ianao mba handehanan'ny hala amin'ny subreddit.
  • Ny bot dia tsy maintsy mandeha amin'ny lohamilina iray β€” tsy azonao atao ny mampandeha azy amin'ny solosainao fotsiny, mametraka azy ao anaty kitaponao ary mandehana amin'ny orinasanao. Noho izany dia nihazakazaka ny zava-drehetra tamin'ny VPS aho. Amin'ny fampiasana ny code promotion habrahabr10 dia afaka mitahiry 10% hafa amin'ny vidiny ianao.
  • Ny tsy fahafahana miditra ara-batana amin'ny angon-drakitra sasany (hita amin'ny mpitantana izy ireo na sarotra loatra ny manangona) - tsy maintsy raisina an-tsaina izany, raha ny marina, tsy ny angon-drakitra rehetra no azo angonina amin'ny fotoana mety.
  • Fahadisoana amin'ny tambajotra: Mankarary ny tambajotra.
  • Izany no tena angon-drakitra velona - tsy madio velively.

Mazava ho azy fa ilaina ny mampiditra ireo nuance ireo amin'ny fampandrosoana. Ny ora/andro manokana dia miankina amin'ny traikefa amin'ny fampandrosoana na ny traikefa miasa amin'ny asa mitovitovy amin'izany, na izany aza, hitantsika fa ny asa dia tena injeniera ary tsy mitaky hetsika fanampiny amin'ny vatana mba hamahana - ny zava-drehetra dia azo tombanana tsara, voalamina ary vita.

Fampitahana ny fizarana Habr

Andao hiroso amin'ny tranga mahaliana kokoa sy tsy misy dikany amin'ny fampitahana kofehy sy/na fizarana amin'ny Habr.

Andeha hojerentsika ny lisitry ny fahasarotana - eto, mba hahatakarana ny teboka tsirairay, dia tsy maintsy mihady kely amin'ilay asa ianao ary manandrana.

  • Amin'ny voalohany dia mihevitra ianao fa misy API, saingy tsy misy. Eny, eny, manana API i Habr, saingy tsy azon'ny mpampiasa idirana (na mety tsy mandeha mihitsy).
  • Avy eo ianao dia manomboka mamaky html - "fangatahana fanafarana", inona no mety hitranga?
  • Ahoana anefa ny fandrafetana? Ny fomba tsotra sy matetika ampiasaina dia ny mamerina ny ID, mariho fa tsy izany no mahomby indrindra ary tsy maintsy miatrika tranga samihafa - ity misy ohatra iray amin'ny hakitroky ny ID tena misy eo amin'ireo efa misy rehetra.

    Inona no mety hitranga amin'ny Data Science? Fanangonana angona
    Nalaina avy amin'ny izany lahatsoratra.

  • Ny angona manta voafono HTML eo an-tampon'ny tranonkala dia maharary. Ohatra, te-hanangona sy hitahiry ny naoty lahatsoratra ianao: nopotehinao tao amin'ny html ny isa ary nanapa-kevitra ny hitahiry azy ho isa ho an'ny fanodinana fanampiny: 

    1) int(score) dia manipy fahadisoana: satria ao amin'ny HabrΓ© dia misy minus, ohatra, ao amin'ny andalana "-5" - izany dia en dash, fa tsy famantarana minus (tsy nampoizina, sa tsy izany?), ka amin'ny Indraindray aho dia tsy maintsy nanangana ny parser ho amin'ny fiainana miaraka amin'ny fanamboarana mahatsiravina toy izany.

    try:
          score_txt = post.find(class_="score").text.replace(u"–","-").replace(u"+","+")
          score = int(score_txt)
          if check_date(date):
            post_score += score
    

    Mety tsy misy daty, plus ary minus mihitsy (araka ny hitantsika etsy ambony ao amin'ny asa check_date, nitranga izany).

    2) Unescaped endri-tsoratra manokana - ho avy izy ireo, mila miomana ianao.

    3) Miova ny rafitra arakaraka ny karazana lahatsoratra.

    4) Mety hisy **rafitra hafahafa** ny lahatsoratra taloha.

  • Amin'ny ankapobeny, ny fitantanana ny hadisoana sy ny mety hitranga na ny mety hitranga dia tsy maintsy atao ary tsy afaka maminavina ianao hoe inona no tsy mety ary ahoana ny mety hisian'ny rafitra ary inona no hianjera any amin'ny toerana misy anao - mila manandrana sy mandinika fotsiny ianao. ny hadisoana apetraky ny mpizara.
  • Dia tsapanao fa mila manadihady amin'ny kofehy maromaro ianao, raha tsy izany dia haharitra 30+ ora ny fanaparitahana ny iray (izany no fotoana famonoana ny parser tokana efa miasa, izay matory ary tsy tafiditra ao anatin'ny fandrarana). IN izany lahatsoratra, ity dia nitarika tamin'ny tetika mitovy amin'izany:

Inona no mety hitranga amin'ny Data Science? Fanangonana angona

Total lisitra araka ny fahasarotana:

  • Miara-miasa amin'ny tambajotra sy html parsing miaraka amin'ny fandefasana sy fikarohana amin'ny ID.
  • Taratasy misy rafitra heterogΓ¨ne.
  • Misy toerana maro izay mora latsaka ny kaody.
  • Ilaina ny manoratra || code.
  • Tsy hita ny antontan-taratasy ilaina, ohatra kaody, ary/na vondrom-piarahamonina.

Ny fotoana tombanana ho an'ity asa ity dia ho avo 3-5 heny noho ny fanangonana angona avy amin'ny Reddit.

Fampitahana ny vondrona Odnoklassniki

Andeha isika hiroso amin'ny tranga mahaliana indrindra ara-teknika voalaza. Amiko dia nahaliana indrindra izany satria raha vao jerena dia toa tsinontsinona izany, saingy tsy ho toy izany mihitsy izany - raha vao manosihosy azy ianao.

Andeha isika hanomboka amin'ny lisitry ny fahasarotana ary mariho fa maro amin'izy ireo no ho sarotra kokoa noho ny voalohany:

  • Misy ny API, saingy saika tsy ampy ny fiasa ilaina.
  • Amin'ny asa sasany dia mila mangataka fidirana amin'ny mailaka ianao, izany hoe ny fanomezana fidirana dia tsy tonga dia tonga.
  • Tena voarakitra an-tsoratra izy io (manomboka, ny teny Rosiana sy anglisy dia mifangaro eny rehetra eny, ary tsy mifanaraka tanteraka - indraindray mila maminavina fotsiny izay tadiaviny aminao any ho any ianao) ary, ankoatra izany, ny famolavolana dia tsy mety amin'ny fahazoana data, ohatra. , ny asa ilaintsika.
  • Mitaky fotoam-pivoriana ao amin'ny antontan-taratasy, fa tsy tena mampiasa azy - ary tsy misy fomba ahafantarana ny pitsopitsony rehetra amin'ny maodely API afa-tsy ny mitsambikina ary manantena fa hisy zavatra hitranga.
  • Tsy misy ohatra ary tsy misy fiaraha-monina; ny hany fanohanana amin'ny fanangonana vaovao dia kely wrapper amin'ny Python (tsy misy ohatra maro amin'ny fampiasana).
  • Ny selenium dia toa safidy azo ampiasaina indrindra, satria maro amin'ireo angona ilaina no mihidy.
    1) Izany hoe, ny fanomezan-dΓ lana dia atao amin'ny alalan'ny mpampiasa sandoka (sy ny fisoratana anarana amin'ny tanana).

    2) Na izany aza, miaraka amin'ny Selenium dia tsy misy antoka ho an'ny asa marina sy azo averina (farafaharatsiny amin'ny tranga ok.ru azo antoka).

    3) Ny tranokala Ok.ru dia misy lesoka JavaScript ary indraindray dia manao fihetsika hafahafa sy tsy mifanaraka.

    4) Mila manao pagination ianao, mampiditra singa, sns...

    5) Ny hadisoan'ny API omen'ny fonosana dia tsy maintsy karakaraina amin'ny fomba mahamenatra, ohatra, toy izao (ampahany amin'ny fehezan-dalΓ na andrana):

    def get_comments(args, context, discussions):
        pause = 1
        if args.extract_comments:
            all_comments = set()
    #makes sense to keep track of already processed discussions
            for discussion in tqdm(discussions): 
                try:
                    comments = get_comments_from_discussion_via_api(context, discussion)
                except odnoklassniki.api.OdnoklassnikiError as e:
                    if "NOT_FOUND" in str(e):
                        comments = set()
                    else:
                        print(e)
                        bp()
                        pass
                all_comments |= comments
                time.sleep(pause)
            return all_comments
    

    Ny fahadisoana tiako indrindra dia:

    OdnoklassnikiError("Error(code: 'None', description: 'HTTP error', method: 'discussions.getComments', params: …)”)

    6) Amin'ny farany, ny Selenium + API dia toa ny safidy mety indrindra.

  • Ilaina ny mamonjy ny fanjakana ary mamerina indray ny rafitra, mitantana ny fahadisoana maro, anisan'izany ny fihetsika tsy mifanaraka amin'ny tranokala - ary sarotra ny mieritreritra ireo hadisoana ireo (raha tsy manoratra parsers matihanina ianao, mazava ho azy).

Ny tombantomban'ny fotoana misy fepetra ho an'ity asa ity dia ho avo 3-5 heny noho ny fanangonana angona avy amin'i Habr. Na dia eo aza ny zava-misy fa amin'ny trangan'i Habr dia mampiasa fomba fiasa eo anoloana miaraka amin'ny parsing HTML izahay, ary amin'ny tranga OK dia afaka miara-miasa amin'ny API amin'ny toerana mitsikera izahay.

hitany

Na manao ahoana na manao ahoana ny fepetra takiana amin'ny fanombanana ny fe-potoana "eo an-toerana" (manomana anio!) amin'ny maodely fantsona fanodinana data be dia be, ny fotoana famonoana dia saika tsy azo atao ny manombatombana na dia amin'ny kalitao aza raha tsy mandinika ny mari-pamantarana asa.

Amin'ny fanamarihana filΓ΄zΓ΄fia kely kokoa, ny paikady fanombantombanana mavitrika dia miasa tsara amin'ny asa injeniera, fa ny olana izay andrana kokoa ary, amin'ny lafiny iray, "mamorona" sy fikarohana, izany hoe, tsy dia azo vinavinaina loatra, dia manana olana, toy ny amin'ireo ohatra amin'ny lohahevitra mitovy. izay noresahinay teto.

Mazava ho azy fa ohatra lehibe fotsiny ny fanangonana angon-drakitra - matetika dia asa tena tsotra sy tsy sarotra ara-teknika izany, ary matetika ny devoly no ao anatin'ny antsipiriany. Ary amin'ity asa ity indrindra no ahafahantsika mampiseho ny karazana safidy azo atao amin'ny zavatra mety ho diso sy ny faharetan'ny asa.

Raha mijery ny toetran'ny asa tsy misy andrana fanampiny ianao, dia mitovy ny Reddit sy OK: misy API, fonosana python, fa raha ny tena izy dia lehibe ny fahasamihafana. Raha jerena amin'ireo mari-pamantarana ireo, ny pars Habr dia toa sarotra kokoa noho ny OK - fa amin'ny fampiharana dia mifanohitra amin'izany, ary izany indrindra no azo jerena amin'ny fanaovana andrana tsotra handinihana ny mason'ny olana.

Araka ny traikefako, ny fomba mahomby indrindra dia ny manombatombana ny fotoana ilainao amin'ny famakafakana mialoha sy ny fanandramana tsotra voalohany, ny famakiana ny antontan-taratasy - ireo dia ahafahanao manome tombana marina ho an'ny asa manontolo. Raha ny momba ny fomba fiasa agile malaza, dia mangataka aminao aho mba hamorona tapakila ho an'ny "manombantombana ny mari-pamantarana asa", izay mifototra amin'izany no ahafahako manome tombana ny zavatra azo atao ao anatin'ny "sprint" ary manome tombana marina kokoa ho an'ny tsirairay. asa.

Noho izany, ny tohan-kevitra mahomby indrindra dia toa ny iray izay hampiseho amin'ny manam-pahaizana manokana "tsy ara-teknika" ny habetsahan'ny fotoana sy ny loharanom-bola hiova arakaraka ny mason-tsivana izay mbola tsy maintsy tombanana.

Inona no mety hitranga amin'ny Data Science? Fanangonana angona

Source: www.habr.com

Add a comment