ويکيپېډيا:ويکي روباټ څنګه جوړ کړو

کينډۍ:لپاره۲ د ويکيپېډيا سايبر روباټونه هغه وسيلې او پروسې(تګلارې) دي چې د ويکيپېډيا سره په اتوماتيک ډول د انسان په لارښوونه سمونوالو په توګه برخه اخلي. په دې پاڼه کې، موږ په ويکيپېډيا کې د کارولو لپاره د روباټ جوړولو لارې چارې تشریح کوو. د روباټ جوړولو لپاره، موږ باید لومړی پوه شو چې مونږ د څه لپاره روباټ جوړوو. تر څو موږ وکولای شو خپلې موخې ته د رسېدو لپاره پوره هڅه وکړو.

زه بايد ولې يو روباټ جوړ کړم؟

سمول

روباټونه په خپلسري ډول د کارونو د ترسره کولو وړتیا لري، په دې مانا چې دوی د انسانانو په پرتله چټک عمل کوي. تاسو د ساده کارونو د ترسره کولو لپاره روباټ ته اړتیا نه لرئ، خو که تاسو ډېر کار کولو ته اړتیا لرئ، د بېلګې په توګه: تاسو اړتیا لرئ چې د یوې کټګورۍ (1000 مقالو) کې يوه کينډۍ ځای پرځای کړئ، نو د دې کار د ترسره کولو لپاره د روباټ کارول سمه لاره ده، ځکه روباټ دا کار د انسان پرځای ډېر ژر او په اسانۍ سره ترسره کوي.

د روباټ جوړولو دمخه مهم ټکي

سمول

دا هم د روباټونو يو څو بېلګې روباټونه چې ويکيپېډيا کې کاريږي.

که تاسو د روباټ جوړولو پرېکړه کړې، د احتمالي غلطیو څخه د مخنیوي لپاره پلان جوړ کړئ او دا مسلې باید په پام کې ونيسئ:

  • ايا روباټ خپلسري توګه کار کوي يا د کارن په اجازه کار کوي؟
  • ایا تاسو پخپله روباټ جوړ کړی یا تاسو په نورو ژبو کې د روباټ مالکینو څخه مرسته ترلاسه کړې؟
  • تاسو د روباټ پلي کولو لپاره کومه ژبه کارولې ده؟
  • ایا تاسو د بیرغ غوښتنه کړې او تاسو سيستم ته ننوتلی یاست؟ که داسې وي، هغه څه چې تاسو د روباټ په مرسته ترسره کوئ هغه به په ليکنو او وروستیو بدلونونو کې ښکاره شي، او په ویکي پاڼو کې به خوندي شي.
  • ایا تاسو په وېب کې د چلولو لپاره روباټ چمتو کړی یا تاسو دا په نورو لارو او نورو ژبو لکه جاوا سکرپټ سره جوړ کړی؟
  • که مو روباټ د يوې ځانګړې تګلارې له مخې رامنځته کړی وي، ایا تاسو دا په خپل کمپیوټر کې اچولی؟یا په سرور کې لکه Toolserver او له لرې يې کنټرولوئ؟
  • که روباټ مو ريموټ کنترول وي او په سرور کې له لرې کنټرولېدای شي، نو ايا نور مديران کولای شي د روباټ کارونه وګوري يا د کار پرمهال د روباټ څارنه وکړي؟

ويکيپېډيا کې روباټ څنګه کار کوي؟

سمول
دوتنه:Wikiedit-cycle.png
د تدوین دورې فعالیت عمومي کتنه

روباټونه د انسانانو په څېر سملاسي ترمیم کوي مګر په دومره توپير چې روباټونه د انسانانو په پرتله ګړندي او نه ستړي کېدونکي دي ، دوی هغه څه کوي چې موږ ورته وایو. روباټونه د تکراري کارونو لپاره عالي دي لکه په مخکې ټاکل شوي ځایونو کې د نمونو ځای په ځای کول په ډېرو مواردو کې، روباټ د خپل کارن حساب سره ويکيپېډيا ته ننوځي او د ويکيپېډيا څخه د پاڼو غوښتنه کوي لکه براوزر، مګر دوی دا پاڼې نه ښکاره کوي. بلکه، دوی په حافظه کې کار کوي او د اړتیا په صورت کې د سمون لپاره د پاڼې کوډ باندې سخت کار کوي، او بیا ټول هغه شیان ترسره کوي چې دوی یې د ترسره کولو لپاره ډیزاین کړي او ویکیپیډیا ته یې خوندي کړي، لکه د براوزرونو په څېر. څرنګه چې روباټونه د انسانانو په څېر وېب پاڼې سره مخ کیږي، نو له همدې امله دوی د ډېرو ستونزو سره مخ دي، لکه د ایډیټ کولو خنډونه او د ایډیټ کولو مسایل، د وخت تېرېدل، او د غیر متوقع ستونزو سره معامله کول. د دې دلیل لپاره، روباټ معمولا د ډېری کارونو ترسره کولو لپاره ډیزاین شوي، او د دې ستونزو سره د معاملې لپاره سم حل په پام کې نیولو سره د روباټ ډیزاین کې مهم رول لوبوي.

د روباټونو لپاره Api

سمول

د ويکيپېډيا د پاڼو د جوړولو لپاره، يو روباټ ته اړتيا لري چې مالومات ترلاسه کړي، تدوين يې کړي او بېرته وسپاري. ډېری د ګرافیکي برنامه کولو وسیلې ډیزاین شوي او د روباټونو لپاره شته.

دا د روباټونو اجازه ورکولو لپاره کتابتون دی - د اتوماتیک پروسس کولو لپاره - د پوښتنو رامینځته کولو او بدلونونو پوسټ کولو لپاره. دا کتابتون په بېلابېلو ژبو کې شتهجی‌سون، XML, YAML نوي توکي په بشپړه توګه سره Query API interface زوړ مطابقت لري. دا ځای وګورئ!API manual page.

حالت: د ويکيمېډيا د ټولو پروژو لپاره د بشپړ فرعي سيټونو سره شتون لري. د ويکيمېډيا د ټولو پروژو د مخونو د سمون وړتيا د api.php له لارې فعاله شوې ده، روباټانو ته اجازه ورکوي چې د انځور له سمون پرته ټولې چارې ترسره کړي.

دا وسیله په پیل کې د ویکیپیډیا مخونو HTML کوډونه تحلیلوي (کوم چې په براوزرونو کې د View->source برخه کې لیدل کیدی شي) او په پاڼه کې د عناصرو ځای پرځای کولو پراساس کار کوي. دا طریقه ډیری ستونزې لري. د ویکیپیډیا ګرافیک ممکن د مخکینۍ خبرتیا پرته بدل شي، کوم چې د کوډ ګډوډۍ سبب کیږي. همدارنګه، د HTML کوډونو لپاره د سرور غوښتنه کول د متن تحلیل په پرتله د سرور څخه ډیر مالومات اخلي. د ویکیپیډیا څخه د ترلاسه شوي مالوماتو مقدار کمولو لپاره، تاسو کولی شئد action=render کمانډ وکاروئ. w/index.php?title=Wikipedia:... &action=render او د پایلې په توګه د اړخ اوزار بارونه او د ویکیپیډیا ټبونه لرې کیږي او د ویکیپیډیا اصلي ګرافیکونو باندې کار کول ګړندي او اسانه کیږي چې انسانان یې ګوري.

نور مواردو کې index.php شونې ده ګټور اوسي لکه د Manual:Parameters to index.php نوملړ چې اوس د دې تخنیک کارولو ته لږ اړتیا شتون لري، او دا تخنیک معمولا د پخوانیو روباټو لخوا کارول کېده چې د API څخه وړاندې شوي. حالت: د نه منلو وړ

دا د XML بڼه کې د پاڼو څخه د محصول تولید لپاره کارول کیږي د لا زياتو مالوماتو لپاره Manual:Parameters to Special:Export ته مراجعه وکړئ!.

حالت: دا د ټولو ويکيمېډيا سرورونو په جوړښت موجود دی

  • Raw (Wikitext) page processing

د action=rawپه لېږلو یا action=raw&templates=expandته د غوښتنې په کولو سره index.php د ویکي پاڼې کوډونو غیر پروسس شوي خام متن د محصول په توګه وړاندې کوي. يو query API له prop=revisions&rvprop=content يا prop=revisions&rvprop=content&rvexpandtemplates=۱ دا بالکل مساوي دی او د نورو مالوماتو استخراج ته اجازه ورکوي.

حالت: دا د ټولو ويکيمېډيا سرورونو په جوړښت موجود دی د ويکيپېډيا ځينې سرورونه داسې ترتيب شوي دي چې کارونکي ته اجازه ورکړي چې منځپانګه کمپرس کړي. gzip:د کمانډ لاین سره "Accept-Encoding: gzip" په ابتدايي برخو کې HTTP کمپریس شوي مینځپانګې ته لاسرسی کیدی شي که چېرې HTTP ځواب "Content-Encoding: gzip" بمتنونه کمپرس شوي دي، که نه نو دوی په نورمال ډول ساتل کیږي. دا د ویکیمیډیا سافټویر سره هیڅ تړاو نلري، مګر په سرور پورې اړه لري. همدارنګه، هغه سایټونه چې ویکیمیډیا کاروي ممکن کمپریشن ونه کاروي.

سيستم ته ننوتل

سمول

يقيني ده چې روباټونه بايد د انسانانو په څېر، وېبپاڼې ته د سمون لپاره ننوځي، روباټونه کولی شي د ننوتلو پرته مینځپانګه ولولي. هغه روباټونه چې خپله ازموینه یې پاس کړې د ننوتلو له لارې ترمیم کولی شي. د ننوتلو او بیرغ درلودلو په شکل کې روباټونه کولی شي ډېری پایلې د query او API په بڼه په ويکيمېډيا کې ولري. ډېری روباوټ framworks باید په اوتومات ډول ننوتل او کوکیز اداره کړي. که تاسو دا framworks نه کاروئ، نو تاسو باید لاندې ګامونه تعقیب کړئ. د امنیت لپاره، د ننوتلو مالومات باید د HTTP POST میتود وکاروئ. ځکه چې د HTTP GET پیرامیټر په URL کې په اسانۍ سره لیدل کیږي؛ او د GET له لارې ننوتل باید غیر فعال وي. د ویکیمیډیا API کارولو لپاره د روباټ د ننوتلو لپاره دوه غوښتنلیک مرحلې ته اړتیا ده.

۱غوښتنه :

URL: https://fa.wikipedia.org/w/api.php?action=login&format=xml

POST parameters:

lgname=BOTUSERNAME

lgpassword=BOTPASSWORD

که پټنوم سم وي، نو پايله "NeedToken" او پټنوم د XML بڼه کې بېرته راستون شي لکه څنګه چې په mw:API:Login کې لیکل شوي. نورې بڼې هم ممکن دي او په لاندې ډول به کوکیز بېرته راګرځي.

۲غوښتنه : URL: https://fa.wikipedia.org/w/api.php?action=login&format=xml

POST parameters:

lgname=BOTUSERNAME

lgpassword=BOTPASSWORD

lgtoken=TOKEN

کله چې د TOKEN څرګندونه د تېرې پایلې څخه ترلاسه کیږي، د لومړۍ غوښتنې HTML کوکي هم د دویمې غوښتنې لخوا تېریږي. د ويکيميډيا سرور ته د بريالي ننوتلو پايله د څو HTTP کوکيز جوړول دي. روباټ باید دا کوکیز خوندي کړي او سرور ته یې واستوي کله چې د سرور څخه د ځواب غوښتنه وکړي (یقینا دا عملیات باید د ترمیم لپاره ترسره شي).

په انګلیسي ویکیپېډیا کې، دا کوکیز باید وکارول شي:

enwikiUserID, enwikiToken,enwikiUserName

enwiki_session کوکی د لېږلو، ترمیم او ځینو بدلونونو لپاره اړین دی. که نه نو، د MediaWiki:Session fail د تېروتنې پیغام به ښکاره شي.

د پټنوم ترميم سره ترميم(edit tokens)

سمول

ويکيپېډيا د ويکيپېډيا مخونو او نورو فعاليتونو لکه شاتګ rollback د سمولو لپاره د سمونedit tokens سیسټم کاروي. پټنوم د تار په څېر دی چې نږدې 20-30 توري اوږدوالی او +\وروستاړي لري. لکه په لاندې بېلګه کې: d41d8cd98f00b204e9800998ecf8427e+\ د پټنوم دنده سمول دي(edit tokens) دا پدې مانا ده چې کله کارن د سمون په نیت په لېنک کلیک کوي، هغه کولی شي د ترمیم پړاو څخه د وتلو پرته ترمیم ته دوام ورکړي. د ترمیم په پروسه کې دوه HTTP غوښتنې شاملې دي

  1. د ترمیم پاسورډ رامینځته کولو غوښتنه وکړئ
  2. دوهمه غوښتنه HTTP بايد ترسره شي، ترڅو د پاڼې نوې مينځپانګې ولېږدوي.

دا ممکنه نه ده چې د HTTP غوښتنې سره سمون ومومي. د ترمیم پاسورډ په سیسټم کې د پاتې کیدو ټول وخت لپاره په ثابت ارزښت کې پاتې کیږي او دا یوازې یو ځل لوستلو ته اړتیا لري، او بیا دا د ترمیم ټولو مرحلو لپاره کارول کیدی شي کارونکي سیسټم پریږدي. د ترمیم پاسورډ ترلاسه کولو لپاره لاندې مرحلې تعقیب کړئ.

(MediaWiki API (api.php

سمول

د لا زیاتو مالوماتو لپاره د غوښتنې پیدا کولو لپاره لاندې پیرامیټونه تعقیب mw:API:Edit - Create&Edit pages او ولولئ!.

action=query

prop=info

titles=PAGENAME

intoken=edit

پټنوم د ترمیم پاسورډ په توګه چمتو شوی. که د ترلاسه شوي ترمیم پټنوم د نږدې 20-30تورو د تار په بڼه نه و او یوازې '+\' وروستاړی و، نو روباټ نشي کولی سیسټم ته ننوځي. دا ستونزه کېدای شي د بېلابېلو شیانو له کبله وي:

  • ستونزه د سرور اړخ څخه د کارن حساب تصدیق کولو کې ده
  • انټرنېټ پرې شوی دی.
  • د وتلو وخت مختلف ډولونه Timeout
  • د کوکیز یا مطلوب کوکیز په سمه توګه خوندي کولو یا رغولو کې تېروتنې

که دا تېروتنه د پروګرام کولو ستونزې له امله نه وي. د کوکیز بیا تنظیمولو لپاره بیا ننوتل. روباټونه د دې لپاره چې دا معلومه کړي چې ایا دوی ننوتل شوي یا نه Assert Edit Extension کارولی شي

دا پاڼه لا زيات سمون او نورې ژباړې ته اړتيا لري د مرستې لپاره کولی شئ له این پاڼې ليدنه وکړئ.


منابع

سمول

انګليسي ويکپېډيا، ۳ اګست ۲۰۱۰ https://en.wikipedia.org/wiki/Wikipedia:Creating_a_bot%7Cسرليک = Wikipedia:Creating a bot