-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Crawler, Извличане на закони, кога са предложени, как са гласувани, кога са приети #26
Comments
👍 за употребата на gif-чета за илюстрация :) |
Би било много хубаво ако позволявахме на хората да видят diff между стария и новия закон. Дали ще бъде възможно да го имплементираме на някакъв по-късен етап? |
👍 за diff-овете. Ако имаме пълните текстове на законите, може да стане, но не съм сигурен как стоят нещата там. Трябва да поразпитам някой по-грамотен юридически от мен. |
@Glamdring се заема с тази задача. Йей. Ние ще използваме неговото API за да си напълним базата. |
Така, API-то вече връща цялата информация от мойта база + линк към XML-а с метаданни за всеки законопроект, откъдето много лесно може да се вземе информация. А като еднократна операция в някакъв бъдещ момент, когато сметнете за добре, ще scrape-на и export-на всички минали документи (в мойта база има само от август 2013). |
@Glamdring това с метаданнитее имплементирано или още не? Пробваме с @jsibelius : но |
PS: да разбираме че с Петко от този линк към XML-а ще го parse-ваме и извкличам допълнителните детайли от там? |
да, additionalMetaData не я връщам, защото XML-ът е достатъчен. |
Token done. Извинявай, може би тъпея, но как да стигна до xml-a? |
А, забравих да кажа, да - metaDataUrl |
Нормално ли е |
Не би трябвало..ама виждам, че е :) ще проверя довечера |
Мда, ако бях деплойнал новата конфингурация, щеше да има metaDataUrl :) ще почне да се появява за новите законопроекти (а всички предишни ще ги "извлачим" наведнъж в близко бъдеще, и си напълните базата с тях еднократно) |
Работи ли вече както трябва? |
Работи! Няма нужда да „извлачваш“ все още. :) Приоритизирали сме към момента да визуализираме гласуванията и присъствието на депутатите. |
Начин на извличане
Списък с закони
На следния адрес има списък с приети закони:
http://www.parliament.bg/bg/laws/
Всеки закон преди да е приет е "Законопроект"
Не гледаме "последни закони". Вместо това отдолу има нещо календар с годините. Трябва да обходим всяка година и всеки месец и да видим законите приети този месец.
И така в страницата на всеки месец ще обходим всеки закон, за да извлечем информация от него.
Примерен закон
http://www.parliament.bg/bg/laws/ID/14656/
Събираме си от тук инфото за да го запазим в нашата база данни. Специално внимание обръщаме към датата на приемане.
Взаимовръзка закон<>гласуване
Със "датата на приемане" правим проверка в нашата база данни за пленарното заседание на същата дата. Търсим по темата на гласуваното. Може да има няколко съвпадения, тоест няколко гласувания. Така вече знаем как са гласували партиите и депутатите по този закон.
Ако нямахме база данни, ето пример как изглежда ръчното търсене в excel-ските документи:
Поддържане на актуален списък със закони
Първият път когато събираме закони ще минем през всичките години и месеци. Оттогава ще минаваме само за последния месец и последния ден, за който нямаме информация. И така ще обновяваме базата данни.
Неприети закони
Водят се отхвърлени или оттеглени законопроекти. Ето примери:
Тях няма да ги намерим в списъка със закони по-горе, понеже те не са официално са закони, а _законопроекти_.
За да можем да съберем неприетите закони и тези чакащи решение трябва отново да правим обхождане по година и месец, но вместо страницата със закони, тази на законопроекти: http://www.parliament.bg/bg/bills
Отново отдолу има календар и отново под същата форма Година - Месец.
За да разберем дали 1 законопроект е станал закон или не, трябва да проверяваме хронологията му:
Поддържане на актуален списък със неприети закони
Това е малко по-"занимавка" отколкото със приетите. Както и при приетите, правим едно начално обхождане на всички години и месеци. След което ще проверяваме единствено последния месец и датите за които нямаме информация.
Допълнението е че трябва да проверяваме и за законопроекти за които още не знаем дали са отхвърлени или чакат решение. Като този: http://www.parliament.bg/bg/bills/ID/13270
_Пояснение_: Някои законопроекти точно като горния пример, който е от 2011г изглежда не се решават или не се обновява сайта на парламента с решението им. За тях няма как да знаем дали е грешка или не и ще е трябва да си ги проверяваме всеки ден.
Визуализация в сайта
Това е само за да си представим как може да се визуализира. С оглед естетика и улеснен достъп търпи промени
На страницата на закона ще се появяват малки диаграми за всяко гласуване на този закон. Диаграмите ще са bar chart с 2 колонки за ДА и НЕ. Самите колонки ще са изградени от гласовете на всеки депутат и затова ще са шарени включващи цветовете на партията на всеки депутат.
Пример:
http://fiddle.jshell.net/W628k/1/show/
Под диаграмата ще може да се показва и скрива списък със депутатите и тяхното поименно гласуване за закона.
The text was updated successfully, but these errors were encountered: