-
Notifications
You must be signed in to change notification settings - Fork 0
Documentation — law_codes.py
revoltMoon edited this page Nov 27, 2018
·
18 revisions
- Получение куки из ответа с сервера.
def _get_cookie(response: <class http.client.HTTPResponse> urllib.request.urlopen(urllib.request.Request(url, headers=reqHeaders)))
- response — ответ с сервера.
- str — куки, полученные с сайта.
- Получение данных со страницы.
def _get_page(url: str, reqHeaders: dict[str,str], prevResponse: urllib.request.urlopen(req), referer: str, raw: bool)
- url — url страницы, которую надо получить;
- reqHeaders — словарь с заголовками POST-запроса;
- prevResponse — это второй элемент кортежа результата, возвращаемого самой _get_page, по умолчанию = None;
- referer — строка с URL страницы, с которой якобы будет сделан переход, по умолчанию = None;
- raw — обработанные ли данные, по умолчанию = false.
-
tuple(url lib.request.urlopen(urllib.request.Request(url, headers=reqHeaders)).read(), url lib.request.urlopen(req))
— данные со страницы.
- Парсим JSON.
_decode_json_from_str(content: str)
- content — строка в формате JSON.
- list or dict сколь угодной вложенности распарсенных данных из JSON'а.
- Класс, описывающий .
- Получение редакций документов.
def get_document_redactions(cls, url: str, reqHeaders: dict[str,str], prevResponse: url lib.request.urlopen(req), referer: str)
- cls — представление класса;
- url — url страницы, которую надо получить;
- reqHeaders — словарь с заголовками POST-запроса;
- prevResponse — это второй элемент кортежа результата, возвращаемого самой _get_page, по умолчанию = None;
- referer — строка с URL страницы, с которой якобы будет сделан переход, по умолчанию = None;
-
jsonRedactions['editions']['list'], response
— list и объект класса
- Создание заголовка документа.
def create_header(cls, CUR_RD_KEY: str, supertype: str, doc_type, absolute_path: str, interredaction_id: str, title: str, release_date: str, effective_date: str, attached: list[str], dstLabel: str, parLabelInSavedHtm: str, rdNote: str, consNote: str, text: str)
- cls — представление класса;
- CUR_RD_KEY — ;
- supertype — супертип;
- doc_type — тип документа;
- absolute_path — ;
- interredaction_id — ;
- title — ;
- release_date — ;
- effective_date — ;
- attached — ;
- dstLabel — ;
- parLabelInSavedHtm — ;
- rdNote — , по умолчанию None;
- consNote — , по умолчанию None;
- text — , по умолчанию None.
- header — словарь с заголовком документа.
- Создаем подзаголовок документа.
def create_subheader(cls, hKey: str, SUBH_SIGN: str, absolute_path: str, interredaction_id: str, title: str, rdNote: str, consNote: str, text: str)
- cls — представление класса;
- hKey — ;
- SUBH_SIGN — ;
- absolute_path — ;
- interredaction_id — ;
- title — ;
- rdNote — ;
- consNote — ;
- text — , по умолчанию = None.
- header — словарь с подзаголовком документа.
- Получаем подзаголовки из дерева и возвращаем линии для статей.
def get_subhdrs_frm_tree_and_return_lines_for_articles(cls, treeItem: dict[str,str], hKey: str, CUR_RD_KEY: str, rekeyedAttachedTitles: dict[str,dict[str,str]], splittedHtm: dict[str, dict[str,str]])
- cls — представление класса;
- treeItem — ;
- hKey — ;
- CUR_RD_KEY — ;
- rekeyedAttachedTitles — ;
- splittedHtm — .
- dict[str,int] — словарь с uid — ключами и номерами строк — значениями.
def get_par_html(cls, allHtml: str, par: int)
- cls — представление класса;
- allHtml — ;
- par — .
lxml.html.document_fromstring(parHtml[0])
def get_paras_and_titles_from_saved_htm(cls, savedHtm: str)
- cls — представление класса;
- savedHtm — .
def split_saved_htm(cls, savedHtm: str)
- cls — представление класса;
- savedHtm — .
def get_cons_note_from_str(cls, string: str)
- cls — представление класса;
- string — .
-
'\n'.join(xl)
, где xl — list.
def clear_splitted_htm_and_get_plus_add_cons_notes(cls, splittedHtm: dict[str, dict[str,str]])
- cls — представление класса;
- splittedHtm — .
def build_article_subheaders_treeItem(cls, articleLines: dict[str, list[str]], CUR_RD_KEY: str)
- cls — представление класса;
- articleLines — словарь со статьями;
- CUR_RD_KEY — .
- None.
- Получение данных из содержимого JSON файла.
def get_code_content(cls, pathToResultJsonLinesFile: str, pathToFileForKeysThathWereDownloadedYet: str)
- cls — представление класса;
- pathToResultJsonLinesFile — путь к файлу с JSON строками из результата;
- pathToFileForKeysThathWereDownloadedYet — путь к файлу для ключей, который мы только что скачали.
- None
- Класс, описывающий настройку параметров для работы с Уголовным Кодексом Российской Федерации.
- Класс, описывающий настройку параметров для работы с Кодексом Российской Федерации об административных правонарушениях.
- Класс, описывающий настройку параметров для работы с Налоговым Кодексом Российской Федерации.
- Класс, описывающий настройку параметров для работы с Гражданским Кодексом Российской Федерации.
- Получение контента из распарсенных данных.
def get_content( codes: set, pathToResultJsonLinesFile: str, pathToFileForKeysThathWereDownloadedYet: str)
- codes — сет с префиксами наших кодексов, по умолчанию =
_ALL_CODES=frozenset(_codesParsers.keys())
; - pathToResultJsonLinesFile — путь к файлу с JSON строками из результата, по умолчанию =
codeHeaders.jsonlines
; - pathToFileForKeysThathWereDownloadedYet — путь к файлу для ключей, который мы только что скачали, по умолчанию =
processedYet.keys
.
- None, но вызывает
_codesParsers[code].get_code_content(pathToResultJsonLinesFile, pathToFileForKeysThathWereDownloadedYet)
, передавая тем самым данные туда.