当前位置: 首页>>代码示例>>Python>>正文


Python SubElement.attrib['slug']方法代码示例

本文整理汇总了Python中xml.etree.ElementTree.SubElement.attrib['slug']方法的典型用法代码示例。如果您正苦于以下问题:Python SubElement.attrib['slug']方法的具体用法?Python SubElement.attrib['slug']怎么用?Python SubElement.attrib['slug']使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在xml.etree.ElementTree.SubElement的用法示例。


在下文中一共展示了SubElement.attrib['slug']方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: converter

# 需要导入模块: from xml.etree.ElementTree import SubElement [as 别名]
# 或者: from xml.etree.ElementTree.SubElement import attrib['slug'] [as 别名]
def converter(mooc_folder, args, content_folder=None):
    """ Do converting job. """
    # Mooc content location
    if content_folder is None:
        content_folder = mooc_folder

    # copying figures
    target = os.path.join(mooc_folder, 'generated')
    os.makedirs(os.path.join(target, 'html/edx/figures'), exist_ok=True)
    for entry, *_ in os.walk(content_folder):
        if re.match(content_folder + r'/w\d+_.+/figures', entry):
            for filename in os.listdir(entry):
                shutil.copy(os.path.join(entry, filename),
                            os.path.join(target, 'html/edx/figures'))
    html_folder = os.path.join(target, 'html/edx')

    # Basic info
    info_org = 'DelftX'
    info_course = 'TOPOCMx'
    info_display_name = 'Topology in Condensed Matter: Tying Quantum Knots'
    info_run = 'course'
    info_start = "2016-02-08T10:00:00Z"

    # Temporary locations
    dirpath = tempfile.mkdtemp() + '/' + info_run
    if args.debug:
        print('Temporary path: ', dirpath)

    # Copying edx_skeleton
    skeleton = mooc_folder + '/edx_skeleton'
    if os.path.exists(skeleton):
        shutil.copytree(skeleton, dirpath)
    else:
        raise RuntimeError('No edx skeleton!')

    # Loading data from syllabus
    syllabus_nb = os.path.join(content_folder, 'syllabus.ipynb')
    data = parse_syllabus(syllabus_nb, content_folder)

    # saving syllabus
    syllabus = split_into_units(syllabus_nb)[0]
    cell = syllabus.cells[1]
    cell['source'] = re.sub(r"(?<!!)\[(.*?)\]\(.*?\)", r"\1", cell['source'])
    syllabus_html = export_unit_to_html(syllabus)
    save_html(syllabus_html, os.path.join(dirpath, 'tabs', 'syllabus.html'))

    # $run$.xml in 'course' folder
    xml_course = Element('course')
    xml_course.attrib['display_name'] = info_display_name
    xml_course.attrib['start'] = info_start

    for chapter in data.chapters:
        chapter_sub = SubElement(xml_course, 'chapter')
        chapter_sub.attrib['url_name'] = chapter.url

    wiki = SubElement(xml_course, 'wiki')
    wiki.attrib['slug'] = ".".join([info_org, info_course, info_run])

    save_xml(xml_course, os.path.join(dirpath, 'course', info_run+'.xml'))

    # saving chapters xmls inside 'chapter' folder
    for chapter in data.chapters:
        chapter_xml = Element('chapter')
        chapter_xml.attrib['display_name'] = chapter.name
        chapter_xml.attrib['start'] = date_to_edx(chapter.date)

        for sequential in chapter.sequentials:
            sequential_sub = SubElement(chapter_xml, 'sequential')
            sequential_sub.attrib['url_name'] = sequential.url

        save_xml(chapter_xml,
                 os.path.join(dirpath, 'chapter', chapter.url+'.xml'))

    # saving sequentials xmls inside 'sequential' folder
    # saving vertical xmls inside 'vertical' folder
    for chapter in data.chapters:
        for sequential in chapter.sequentials:
            sequential_xml = Element('sequential')
            sequential_xml.attrib['display_name'] = sequential.name

            if chapter.url != 'sec_00':
                if sequential.name == 'Assignments':
                    sequential_xml.attrib['format'] = "Research"
                else:
                    sequential_xml.attrib['format'] = "Self-check"

                sequential_xml.attrib['graded'] = "true"

            # getting units
            units = split_into_units(sequential.source_notebook,
                                     include_header=False)

            for i, unit in enumerate(units):
                vertical_url = sequential.url + '_{0}'.format(str(i).zfill(2))
                # add vertical info to sequential_xml
                vertical_sub = SubElement(sequential_xml, 'vertical')
                vertical_sub.attrib['url_name'] = vertical_url

                # creating vertical.xml
                vertical_xml = Element('vertical')
#.........这里部分代码省略.........
开发者ID:Huaguiyuan,项目名称:phys_codes,代码行数:103,代码来源:converter.py

示例2: converter

# 需要导入模块: from xml.etree.ElementTree import SubElement [as 别名]
# 或者: from xml.etree.ElementTree.SubElement import attrib['slug'] [as 别名]
def converter(mooc_folder, args):
    """ Do converting job. """
    # Basic info
    info_org='DelftX'
    info_course='TOPOCMx'
    info_display_name='Topology in Condensed Matter: Tying Quantum Knots'
    info_run='1T2015'
    info_start="2015-02-05T12:00:00Z"

    # Mooc content location
    content_folder = mooc_folder

    # Temporary locations
    dirpath = tempfile.mkdtemp() + '/' + info_run
    if args.debug:
        print('Temporary path: ', dirpath)

    # Copying edx_skeleton
    skeleton = content_folder + '/edx_skeleton'
    if os.path.exists(skeleton):
        shutil.copytree(skeleton, dirpath)
    else:
        'No edx skeleton!'
        return

    # Loading data from syllabus
    syllabus_nb = os.path.join(content_folder, 'syllabus.ipynb')
    data = parse_syllabus(syllabus_nb, content_folder)

    # saving syllabus
    syllabus = split_into_units(syllabus_nb)[0]
    cell = syllabus.worksheets[0].cells[1]
    cell['source'] = re.sub(r"(?<!!)\[(.*?)\]\(.*?\)", r"\1", cell['source'])
    syllabus_html = export_unit_to_html(syllabus)
    save_html(syllabus_html, os.path.join(dirpath, 'tabs', 'syllabus.html'))


    # course.xml in main folder
    xml_main_course = Element('course')
    xml_main_course.attrib['course'] = info_course
    xml_main_course.attrib['org'] = info_org
    xml_main_course.attrib['url_name'] = info_run

    save_xml(xml_main_course, os.path.join(dirpath,'course.xml'))

    # $run$.xml in 'course' folder
    xml_course = Element('course')
    xml_course.attrib['display_name'] = info_display_name
    xml_course.attrib['start'] = info_start

    for chapter in data.chapters:
        chapter_sub = SubElement(xml_course, 'chapter')
        chapter_sub.attrib['url_name'] = chapter.url

    wiki = SubElement(xml_course, 'wiki')
    wiki.attrib['slug'] = ".".join([info_org, info_course, info_run])

    save_xml(xml_course, os.path.join(dirpath,'course',info_run+'.xml'))

    # saving chapters xmls inside 'chapter' folder
    for chapter in data.chapters:
        chapter_xml = Element('chapter')
        chapter_xml.attrib['display_name'] = chapter.name
        chapter_xml.attrib['start'] = date_to_edx(chapter.date)

        for sequential in chapter.sequentials:
            sequential_sub = SubElement(chapter_xml, 'sequential')
            sequential_sub.attrib['url_name'] = sequential.url

        save_xml(chapter_xml,
                 os.path.join(dirpath,'chapter',chapter.url+'.xml'))

    # saving sequentials xmls inside 'sequential' folder
    # saving vertical xmls inside 'vertical' folder
    for chapter in data.chapters:
        for sequential in chapter.sequentials:
            sequential_xml = Element('sequential')
            sequential_xml.attrib['display_name'] = sequential.name

            if chapter.url != 'sec_00':
                if sequential.name == 'Assignments':
                    sequential_xml.attrib['format'] = "Research"
                else:
                    sequential_xml.attrib['format'] = "Self-check"

                sequential_xml.attrib['graded'] = "true"

            #getting units
            units = split_into_units(sequential.source_notebook)

            for i, unit in enumerate(units):
                vertical_url = sequential.url + '_{0}'.format(str(i).zfill(2))
                # add vertical info to sequential_xml
                vertical_sub = SubElement(sequential_xml, 'vertical')
                vertical_sub.attrib['url_name'] = vertical_url

                # creating vertical.xml
                vertical_xml = Element('vertical')
                vertical_xml.attrib['display_name'] = unit.metadata.name

#.........这里部分代码省略.........
开发者ID:joebradly,项目名称:topocm_content,代码行数:103,代码来源:converter.py


注:本文中的xml.etree.ElementTree.SubElement.attrib['slug']方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。