د دې حقیقت سره سره چې دا ترټولو غوره قضیه ده، دا لاهم د حقیقي ژوند څخه یو شمیر مهم عوامل په پام کې نیولو سره ارزښت لري:
د API محدودیتونه - موږ مجبور یو چې په بیچونو کې ډاټا واخلو (د غوښتنو تر مینځ خوب او نور).
د راټولولو وخت - د بشپړ تحلیل او پرتله کولو لپاره، تاسو باید یوازې د سپیډرډیټ له لارې د تګ لپاره د پام وړ وخت ځانګړی کړئ.
بوټ باید په سرور کې وګرځي — تاسو نشئ کولی دا یوازې په خپل لپ ټاپ کې پرمخ وړئ ، دا په خپل کڅوړه کې واچوئ ، او خپل سوداګرۍ ته لاړشئ. نو ما هر څه په VPS کې واخیستل. د پروموشنل کوډ habrahabr10 په کارولو سره تاسو کولی شئ نور 10٪ لګښت خوندي کړئ.
د ځینو معلوماتو فزیکي لاسرسی (دوی د مدیرانو لپاره لیدل کیږي یا راټولول خورا ستونزمن دي) - دا باید په پام کې ونیول شي؛ په اصولو کې، ټول معلومات په کافي وخت کې نه شي راټولیدلی.
د شبکې تېروتنې: شبکه کول یو درد دی.
دا د حقیقي ډاټا ژوند کوي - دا هیڅکله خالص ندی.
البته، دا اړینه ده چې دا ډول ډولونه په پراختیا کې شامل کړئ. ځانګړي ساعتونه/ورځې په پراختیایي تجربو یا ورته کارونو کې د کار کولو تجربې پورې اړه لري، په هرصورت، موږ ګورو چې دلته دنده په بشپړه توګه انجینري ده او د حل کولو لپاره د بدن اضافي حرکتونو ته اړتیا نلري - هرڅه خورا ښه ارزول کیدی شي، مهال ویش او ترسره کیدی شي.
د حبر برخو پرتله کول
راځئ چې د هیبر د تارونو او / یا برخو پرتله کولو یوې ډیرې په زړه پورې او غیر معمولي قضیې ته لاړ شو.
راځئ چې زموږ د پیچلتیا چک لیست وګورو - دلته، د هر ټکي د پوهیدو لپاره، تاسو باید پخپله دنده کې لږ څه وخورئ او تجربه وکړئ.
په لومړي سر کې تاسو فکر کوئ چې یو API شتون لري، مګر شتون نلري. هو، هو، هابر یو API لري، مګر دا یوازې د کاروونکو لپاره د لاسرسي وړ نه دی (یا شاید دا کار نه کوي).
بیا تاسو یوازې د html پارس کول پیل کړئ - "د وارداتو غوښتنې"، څه شی غلط کیدی شي؟
په هرصورت، څنګه تجزیه کول؟ ترټولو ساده او په مکرر ډول کارول کیږي د IDs تکرار کول دي ، په یاد ولرئ چې دا خورا مؤثره ندي او باید مختلف قضیې اداره کړي - دلته د ټولو موجوده IDs په مینځ کې د اصلي IDs کثافت مثال دی.
په اساسي ډول، د تېروتنې اداره کول او څه چې کېدای شي یا نه واقع شي باید اداره شي او تاسو د ډاډ لپاره وړاندوینه نشئ کولی چې څه به غلط شي او جوړښت به څنګه وي او کوم ځای به راښکته شي - تاسو به یوازې هڅه وکړئ او په پام کې ونیسئ هغه تېروتنې چې پارسر یې اچوي.
بیا تاسو پوهیږئ چې تاسو اړتیا لرئ په څو تارونو کې تجزیه وکړئ ، که نه نو په یوه کې پارس کول به بیا 30+ ساعته وخت ونیسي (دا په بشپړ ډول د دمخه کار کولو واحد تار شوي پارسر اجرا کولو وخت دی ، کوم چې خوب کوي او د هیڅ بندیز لاندې نه راځي). IN دا مقاله، دا په ځینو وختونو کې ورته سکیم ته لاره هواره کړه:
د پیچلتیا له مخې ټول چک لیست:
د شبکې سره کار کول او html د تکرار سره او د ID لخوا لټون کول.
6) په نهایت کې، سیلینیم + API د خورا منطقي اختیار په څیر ښکاري.
دا اړینه ده چې دولت خوندي کړئ او سیسټم بیا پیل کړئ ، ډیری خطاګانې اداره کړئ ، پشمول د سایټ متضاد چلند - او دا خطاګانې تصور کول خورا ګران دي (مګر که تاسو په مسلکي ډول پارسر ونه لیکئ ، البته).
د دې کار لپاره د مشروط وخت اټکل به د هابر څخه د معلوماتو راټولولو په پرتله 3-5 ځله لوړ وي. د دې حقیقت سره سره چې د حبر په قضیه کې موږ د HTML پارس کولو سره مخکینۍ طریقه کاروو، او د OK په حالت کې موږ کولی شو په مهمو ځایونو کې د API سره کار وکړو.
په یو څه نور فلسفي یادښت کې، د ګړندي اټکل کولو ستراتیژۍ د انجینرۍ دندو لپاره ښه کار کوي، مګر ستونزې چې ډیرې تجربې دي او په یوه معنی، "تخلیقي" او سپړونکي، د بیلګې په توګه، لږ اټکل کیږي، ستونزې لري، لکه د ورته موضوعاتو مثالونو کې، کوم چې موږ دلته بحث کړی دی.
البته، د معلوماتو راټولول یوازې یو اصلي مثال دی - دا معمولا یو په زړه پورې ساده او تخنیکي پلوه غیر پیچلي کار دی، او شیطان اکثرا په توضیحاتو کې وي. او دا دقیقا پدې کار کې دی چې موږ کولی شو د ممکنه اختیارونو ټوله لړۍ وښیو چې څه شی غلط کیدی شي او دقیقا څومره کار کولی شي.
که تاسو د اضافي تجربو پرته د دندې ځانګړتیاو ته ګورئ، نو بیا Reddit او OK ورته ښکاري: یو API شتون لري، د پیتون ریپر، مګر په حقیقت کې، توپیر خورا لوی دی. د دې پیرامیټونو له مخې قضاوت کول ، د هابر پارس د OK په پرتله خورا پیچلي ښکاري - مګر په عمل کې دا خورا برعکس دی ، او دا واقعیا هغه څه دي چې د ستونزې پیرامیټرونو تحلیل کولو لپاره د ساده تجربو په ترسره کولو سره موندل کیدی شي.
زما په تجربه کې، ترټولو اغیزمنه طریقه د هغه وخت اټکل کول دي چې تاسو به د لومړني تحلیل لپاره اړتیا ولرئ او ساده لومړنۍ تجربې، د اسنادو لوستل - دا به تاسو ته اجازه درکړي چې د ټول کار لپاره دقیق اټکل وړاندې کړئ. د مشهور ځیرک میتودولوژۍ په شرایطو کې ، زه له تاسو څخه غوښتنه کوم چې د "د کار پیرامیټونو اټکل کولو" لپاره ټیکټ رامینځته کړئ ، د دې پراساس زه کولی شم د دې ارزونه وکړم چې په "سپرینټ" کې څه ترسره کیدی شي او د هر یو لپاره ډیر دقیق اټکل وړاندې کړم. دنده
له همدې امله، تر ټولو اغېزمن دلیل داسې ښکاري چې یو "غیر تخنیکي" متخصص وښيي چې څومره وخت او سرچینې به د پیرامیټونو په پام کې نیولو سره توپیر ولري چې لا تر اوسه ارزول شوي.