Git Product home page Git Product logo

wikiautodates's Introduction

Խնդիրը

Վիքիպեդիայում ավտոմատացնել ամսաթվերի և տարեթվերի հոդվածներում այդ օրերին/տարիներին ծնված և մահացած մարդկանց մասին տեղեկատվության տեղադրումը:

Պայմանավորվեցինք բոլոր ֆունկցիաներում օգտագործել հետևյալ ստրուկտուրաները․

Օրը պահելու համար

DayObject {
	day: 31,
	month: 12,
	year: 1908
}

Անձի մասին ինֆորմացիան պահելու համար

NameObject {
	name: "",
	description: ""
}

Խնդիրը բաժանել ենք մասերի․

  1. getDatesFromArticleText(text) [Թագուհի, Անժելա] - ստանում է որևէ Վիքի հոդվածի տեքստ (օրինակ http://hy.wikipedia.org/w/index.php?title=Հովհաննես_Թումանյան&action=edit ) և փորձում է գտնել ծննդյան/մահման ամսաթվերը հոդվածի տեքստից: Վերադարձնում է հետևյալ տիպի օբյեկտ (եթե ծննդյան/մահվան օր չկա կամ հայտնի չի, վերադարձնում է null)
{
	birth: DayObject,
	death: DayObject
}
  1. getDatesFromInfoBox(text) [Մարիամ (3րդ կուրս), Արտաշ] - փորձում է գտնել ծննդյան/մահվան ամսաթվերը տեղեկաքարտից:
  2. getNameDescriptionFromArticleText(text) [Մարիամ (2րդ կուրս)] - փորձում է գտնել անձի անունը և նրան բնութագրող մի քանի բառ հոդվածի տեսքտից: Վերադարձնում է NameObject օբյեկտ:
  3. getNameDescriptionFromInfoBox(text) [Գայանե, Արփինե] - նույն է փորձում է անել տեղեկաքարտից:
  4. getDatePageText(DayObject), getYearPageText(DayObject) [Գայանե, Աշխեն] - այս ֆունկցիաները վերադարձնում են տրված DayObject օրվան համապատասխանող ամսաթվի և տարեթվի հոդվածի տեսքտը վիքիպեդիայից: Պետք է օգտվել morebits.js ֆայլում ստեղծվող կլասերից, մասնավորապես՝ wiki.page: Օրինակ կարելի է տեսնել morebits-example.js ֆայլում:
  5. checkPersonExists(text, section, NameObject, DayObject, isYear) [Ռոմո] - ստանում է տարվա կամ օրվա (կախված isYear boolean պարամետրից) հոդվածի տեքստը (օրինակ https://hy.wikipedia.org/w/index.php?title=Փետրվարի_19&action=edit ) և վերադարձնում է true, եթե NameObjectով որոշվող անձի մասին տեղեկություն կա section բաժնում (այն կարող է լինել Ծնունդներ և Մահեր):
  6. addPerson(text, section, NameObject, DayObject, isYear) [Տիգրան] - ստանում է տարվա կամ օրվա (կախված isYear boolean պարամետրից) հոդվածի տեքստը և այնտեղ համապատասխան վայրում ավելացնում է տվյալ անձի մասին տող (NameObject և DayObject օբյեկտներին համապատասխան)
  7. HTML [Անահիտ] - պետք է ստեղծել form, որտեղ կերևան հոդվածի տեքստից գտնված ամսաթվերն ու տարեթվերը, որոշակի button սեղմելուց հետո կկանչվեն JSի համապատասխան ֆունկցիաները և կցուցադրվեն ամսաթվերի ու տարեթվերի հոդվածների փոփոխված տեքստերը:

JavaScriptի String-երի հետ աշխատող ֆունկցիաները (http://www.w3schools.com/jsref/jsref_obj_string.asp) պետք է որ բավարար լինեն 1-7 ֆունկցիաները իրականացնելու համար: Շատ կարող են օգնել Regular Expressionները, որոնց կարելի է ծանոթանալ այստեղ․ http://www.codecademy.com/courses/javascript-beginner-en-DXEDZ/0/1

wikiautodates's People

Contributors

hgayane avatar hrant-khachatrian avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.