รายละเอียดซอฟแวร์:
รุ่น: 3.4.4 การปรับปรุง
วันที่อัพโหลด: 12 May 15
การอนุญาต: ฟรี
ความนิยม: 245
lxml รวมความเร็วของห้องสมุดเหล่านั้นด้วยความเรียบง่ายของภาษา Python
เข้ากันได้กับทุกรุ่น CPython 2.4-3.2
มีอะไรใหม่ ในข่าวประชาสัมพันธ์ฉบับนี้.
- lxml.html.iterlinks ในขณะนี้ ผลตอบแทนการเชื่อมโยงภายในแท็กรีเฟรช meta.
- ตัวเลือกใหม่ XMLParser collect_ids = เท็จปิดการใช้งานการสร้างตารางแฮช ID นี้อย่างมีนัยสำคัญสามารถเพิ่มความเร็วในการแยกของเอกสารที่มีรหัสที่แตกต่างกันจำนวนมากที่ไม่ได้ใช้.
- parser ใช้ตารางกัญชาต่อเอกสารสำหรับรหัส XML ซึ่งจะช่วยลดภาระของกิงดิคแยกวิเคราะห์ทั่วโลกและเพิ่มความเร็วในการแยกวิเคราะห์เอกสารที่มีรหัสที่แตกต่างกัน.
- ElementTree.getelementpath (องค์ประกอบ) ผลตอบแทนการแสดงออก ElementPath โครงสร้างองค์ประกอบที่กำหนดซึ่งสามารถนำมาใช้สำหรับการค้นหาในภายหลัง.
- XMLFile () ยอมรับการโต้เถียงครั้งใหม่ใกล้ = ทรูที่จะปิดแฟ้ม (เหมือน) วัตถุหลังจากที่เขียนให้กับพวกเขา ก่อน XMLFile () เท่านั้นปิดไฟล์ถ้ามันเปิดมันภายใน.
- อนุญาตให้ & quot; ByteArray & quot; ประเภทสำหรับป้อนข้อความ ASCII.
มีอะไรใหม่ ในรุ่น 3.4.2:
- lxml.html.iterlinks ตอนนี้ผลตอบแทนการเชื่อมโยงภายในเมตา ฟื้นฟูแท็ก.
- ตัวเลือกใหม่ XMLParser collect_ids = เท็จปิดการใช้งานการสร้างตารางแฮช ID นี้อย่างมีนัยสำคัญสามารถเพิ่มความเร็วในการแยกของเอกสารที่มีรหัสที่แตกต่างกันจำนวนมากที่ไม่ได้ใช้.
- parser ใช้ตารางกัญชาต่อเอกสารสำหรับรหัส XML ซึ่งจะช่วยลดภาระของกิงดิคแยกวิเคราะห์ทั่วโลกและเพิ่มความเร็วในการแยกวิเคราะห์เอกสารที่มีรหัสที่แตกต่างกัน.
- ElementTree.getelementpath (องค์ประกอบ) ผลตอบแทนการแสดงออก ElementPath โครงสร้างองค์ประกอบที่กำหนดซึ่งสามารถนำมาใช้สำหรับการค้นหาในภายหลัง.
- XMLFile () ยอมรับการโต้เถียงครั้งใหม่ใกล้ = ทรูที่จะปิดแฟ้ม (เหมือน) วัตถุหลังจากที่เขียนให้กับพวกเขา ก่อน XMLFile () เท่านั้นปิดไฟล์ถ้ามันเปิดมันภายใน.
- อนุญาตให้ & quot; ByteArray & quot; ประเภทสำหรับป้อนข้อความ ASCII.
มีอะไรใหม่ ในรุ่น 3.3.2:
- resolvers คุณสมบัติและรุ่นเช่นเดียวกับ วิธีการ set_element_class_lookup () และ makeelement () หายไปจากวัตถุ iterparse.
- กรณีของ XMLSchema, Schematron และ RelaxNG ไม่ได้ล้าง error_log ท้องถิ่นของพวกเขาก่อนที่จะใช้การตรวจสอบ.
- lxml.doctestcompare ผสมขึ้น & quot; คาดว่า & quot; และ & quot; ที่เกิดขึ้นจริง & quot; ในค่าแอตทริบิวต์.
มีอะไรใหม่ ในรุ่น 3.3.1:
- บักคงที่:
- เอกสาร HTML แยกกับ parser.feed () ล้มเหลวที่จะหาองค์ประกอบในช่วงย้ำแท็ก.
- อาคาร PyPy ล้มเหลวเนื่องจากขาดหายไปสำหรับการสนับสนุน PyUnicode_Compare () และ PyByteArray _ * () ใน PyPy ของ C-API.
- รวบรวมใน MSVC ล้มเหลวเนื่องจากขาดหายไป & quot; stdint.h & quot; ไฟล์ส่วนหัวมาตรฐาน.
- iterparse () ล้มเหลวที่จะแยก BOM นำไฟล์.
มีอะไรใหม่ ในรุ่น 3.3.0:
- บักคงที่:
- แก้ปัญหาที่แตกต่างเส้นทางแฟ้มจาก URL ที่ถูกทำให้รัดกุมในการผลิตเชิงลบที่ผิดพลาดน้อย.
มีอะไรใหม่ ในรุ่น 3.2.3:
- การสนับสนุนคงที่สำหรับ Python 2.4 ซึ่งหายไปใน 3.2 0.2.
มีอะไรใหม่ ในรุ่น 3.2.1:
- วิธี apply_templates () และ process_children () ของ องค์ประกอบการขยาย XSLT ได้รับสองตัวเลือกใหม่ elements_only บูลและ remove_blank_text ที่ทิ้งทั้งสตริงทั้งหมดหรือช่องว่างเท่านั้นสตริงจากรายการผล.
มีอะไรใหม่ ในรุ่น 3.2.0:
- นำช่องว่างสามารถเปลี่ยนพฤติกรรมของการแยกสตริง ฟังก์ชั่นใน lxml.html.
- ฟังก์ชั่นการแยกสตริงใน lxml.html มีความแข็งแกร่งมากขึ้นในหน้าของเนื้อหา HTML ผิดปกติเช่นเฟรมเซตหรือหายไปแท็กร่างกาย.
- I / O ผิดพลาดขณะพยายามเข้าถึงไฟล์ที่มีเส้นทางที่ประกอบด้วยอักขระที่ไม่ใช่ ASCII สามารถเพิ่ม UnicodeDecodeError แทนที่จะต้องรายงาน IOError.
- แยกจากสตริงในหน่วยความจำเข้าถึงเครือข่ายผู้พิการในการแยกวิเคราะห์เริ่มต้นและต่อมาได้พยายามที่จะแยกจาก URL ล้มเหลว.
มีอะไรใหม่ ในรุ่น 3.1.2:
- ผ่านแอตทริบิวต์ผ่าน API namespace-ไม่รู้ สะพานแซ็กโซโฟน (เช่น handler.startElement () วิธีการ) ล้มเหลวด้วย TypeError.
- ข้อผิดพลาดเป็นอันดับคงที่ในการส่งออกเมื่อมีการแปลง XSLT ต้นไม้ผลให้สายอักขระ Unicode.
มีอะไรใหม่ ในรุ่น 3.0.2:
- ผิดพลาดคงที่ในระหว่างการปิดล่ามโดยสลับไป Cython 0.17 0.3 สำหรับการสร้าง.
มีอะไรใหม่ ในรุ่น 3.0:
- C14N ช่วยให้ระบุคำนำหน้ารวมจะได้รับการเลื่อนตำแหน่งให้เป็นยอด ระดับช่วงอนุกรมพิเศษ.
- การสนับสนุนสำหรับการสร้างครั้งแรกใน PyPy (ผ่าน cpyext).
- วัตถุ DTD ได้รับ API ที่ช่วยให้สามารถเข้าถึงการอ่านประกาศของพวกเขา.
- xpathgrep.py รับการสนับสนุนสำหรับการแยกบรรทัดโดยบรรทัด (เช่นจากการส่งออก grep) และสำหรับการส่งออกโดยรอบพร้อมกับป้ายรากใหม่.
- E-โรงงานใน lxml.builder รับเชื้อชนิดข้อมูลที่รู้จักกัน (เช่นเชื้อสตริง) เมื่อมีการสร้างองค์ประกอบรอบตัวพวกเขา.
- ย้ำต้นไม้และ iterparse () ที่มีการโต้แย้งแท็กเลือกสนับสนุนผ่านชุดของแท็ก โหนดจะถูกส่งกลับโดย iterators ถ้าพวกเขาตรงกับแท็ก.
มีอะไรใหม่ ในรุ่น 2.3.5:
- การแข่งขันเมื่อผสานโหนดข้อความใน element.remove ( ).
- ความผิดพลาดในการแยกวิเคราะห์แซ็กโซโฟน / เป้าหมายเมื่อรายงานประเภทเอกสารที่ว่างเปล่า.
มีอะไรใหม่ ในรุ่น 2.3.4:
- การแข่งขันเมื่อมีการสร้าง nsmap (ทรัพย์สินธาตุ) ด้วย ยูริ namespace ที่ว่างเปล่า.
- การแข่งขันเนื่องจากสภาพการแข่งขันที่ผิดพลาด (หรือข้อความที่ผู้ใช้) เกิดขึ้นในระหว่างการประมวลผล XSLT เกลียว.
- รวบรวมสไตล์ XSLT สามารถละเว้นข้อผิดพลาดสะสม.
มีอะไรใหม่ ในรุ่น 2.3.3:
- คุณสมบัติเพิ่ม:
- lxml.html.tostring () ได้รับเลือกเป็นอันดับใหม่ with_tail และประเภทเอกสาร.
- บักคงที่:
- แก้ไขความผิดพลาดเมื่อใช้ iterparse () สำหรับการแยก HTML และขอเริ่มต้นเหตุการณ์.
- แยกคงที่ของตัวเลือกมากขึ้นในการ cssselect ช่องว่างก่อนที่จะหลอกองค์ประกอบและการเรียนการหลอกอย่างมีนัยสำคัญขณะที่มันเป็นลูกหลาน Combinator & quot; E: หลอก & quot; ควรแยกเดียวกับ & quot; E *: หลอก & quot ;, ไม่ & quot; E:. หลอก & quot;
- lxml.html.diff ไม่ยกข้อยกเว้นเมื่อกดปุ่มแท็ก 'img' โดยไม่ต้อง 'src' แอตทริบิวต์.
มีอะไรใหม่ ในรุ่น 2.3.2:
- คุณสมบัติเพิ่ม:
- lxml.objectify.deannotate () มีตัวเลือก cleanup_namespaces บูลใหม่ที่จะลบประกาศ namespace แล (และโดยทั่วไปการทำความสะอาดการประกาศ namespace) หลังจากที่ถอดคำอธิบายประกอบชนิด.
- lxml.objectify ได้รับของตัวเอง SubElement () ฟังก์ชันเป็นสำเนาของ etree.SubElement เพื่อหลีกเลี่ยงการนำเข้าซ้ำซ้อนอย่างอื่นของ lxml.etree ในด้านผู้ใช้.
- บักคงที่:
- คงที่ & quot; ทายาท & quot; ข้อผิดพลาดใน cssselect เป็นครั้งที่สอง (หลังจากการแก้ไขครั้งแรกใน lxml 2.3.1) การเปลี่ยนแปลงก่อนหน้านี้ส่งผลให้ประสิทธิภาพการทำงานที่ถดถอยอย่างจริงจังสำหรับการประเมินผลตาม XPath ในการแสดงออกแปล โปรดทราบว่านี้แบ่งการใช้งานของบางส่วนของการสร้างการแสดงออก XPath เป็นเส้นทางที่ตั้ง XSLT ที่ทำงานก่อนหน้านี้ใน 2.3.1.
- แยกคงที่ของบางอย่างในตัวเลือก cssselect ช่องว่างหลังจาก combinators & quot; & # x3e; & quot ;, & quot; + & quot; และ & quot; ~ & quot; คือตอนนี้ไม่สนใจได้อย่างถูกต้อง ก่อนหน้านี้จะได้รับการแยกวิเคราะห์เป็นลูกหลาน Combinator ตัวอย่างเช่น & quot; & # div x3e; .foo & quot; ถูกแยกเดียวกับ & quot; & # div x3e * .foo & quot; แทนที่จะ & quot; & # div x3e; .foo & quot;.
มีอะไรใหม่ ในรุ่น 2.3.1:
- คุณสมบัติเพิ่ม:
- ตัวเลือกใหม่ใน kill_tags lxml.html.clean ที่จะลบแท็กที่เฉพาะเจาะจงและเนื้อหาของพวกเขา (เช่นทรีย่อยทั้งหมดของพวกเขา).
- pi.get () และ pi.attrib คำแนะนำในการประมวลผลที่จะแยกคุณลักษณะหลอกจากเนื้อหาข้อความของคำแนะนำในการประมวลผล.
- lxml.get_include () กลับรายการรวมถึงเส้นทางที่สามารถใช้ในการรวบรวมรหัส C ภายนอกกับ lxml.etree นี้เป็นสิ่งจำเป็นโดยเฉพาะสำหรับการเชื่อมโยงแบบคง lxml เมื่อสร้างรหัสความต้องการที่จะรวบรวมกับส่วนหัวเดียวกันแน่นอนรุ่นของแฟ้มที่เป็นตัวเอง lxml.
- Resolver.resolve_file () ใช้เวลา close_file ตัวเลือกเพิ่มเติมที่กำหนดค่าถ้าแฟ้ม (เหมือน) วัตถุจะปิดหลังจากที่ได้อ่านหรือไม่ แฟ้มจะถูกปิดเป็นผู้ใช้ที่ไม่ได้คาดว่าจะทำให้มีการอ้างอิงไป.
- บักคงที่:
- การทำความสะอาด HTML ไม่ได้ลบ 'ข้อมูล'. การเชื่อมโยง
- การรวมตัวแยกวิเคราะห์ html5lib ตอนนี้ใช้อย่างเป็นทางการในการดำเนินงาน html5lib ตัวเองซึ่งจะทำให้มันทำงานร่วมกับรุ่นใหม่ของห้องสมุด.
- ใน lxml.sax, endElementNS () ไม่ถูกต้องอาจปฏิเสธแท็กชื่อธรรมดาเมื่อเหตุการณ์เริ่มต้นที่สอดคล้องกันสรุปชื่อแท็ธรรมดาเหมือนกันที่จะอยู่ใน namespace เริ่มต้น.
- เมื่อวัตถุที่มีไฟล์ที่เปิดจะผ่านเข้าสู่แยก () หรือ iterparse () parser จะไม่ปิดมันหลังการใช้งาน ย้อนกลับนี้การเปลี่ยนแปลงใน lxml 2.3 ที่ไฟล์ทั้งหมดจะถูกปิด มันเป็นความรับผิดชอบของผู้ใช้ที่จะต้องปิดแฟ้ม (เหมือน) วัตถุในกรณีข้อผิดพลาด.
- ข้อผิดพลาดในการยืนยัน lxml.html.cleaner เมื่อทิ้งองค์ประกอบระดับบนสุด.
- ใน lxml.cssselect ใช้ XPath '// B' (ย่อมาจาก '/ ลูกหลานหรือตัวเอง :: โหนด () / B') แทน '/ ลูกหลาน :: B' สำหรับ css ที่ เลือกลูกหลาน ('B') นี้จะทำให้กรณีขอบไม่กี่เพื่อให้สอดคล้องกับพฤติกรรมการเลือกใน WebKit และ Firefox และทำให้การแสดงออกมากขึ้นและ CSS เส้นทางตำแหน่งที่ถูกต้อง (สำหรับใช้ใน XSL: แม่แบบการแข่งขัน).
- ใน lxml.html ไม่เลือก & # x3c; & # ตัวเลือก x3e; แท็กไม่แสดงขึ้นมาในรูปแบบค่าที่เก็บรวบรวม.
- การเพิ่ม / ลบ & # x3c; & # ตัวเลือก x3e; ค่าจาก / ไปยังเขตข้อมูลฟอร์มเลือกหลายอย่างถูกต้องเลือกพวกเขาและพวกเขา unselects.
- การเปลี่ยนแปลงอื่น ๆ :
- คงสร้างสามารถระบุไดเรกทอรีดาวน์โหลดที่มีตัวเลือก --download-ผบ.
มีอะไรใหม่ ในรุ่น 2.3:
- คุณสมบัติเพิ่ม:
- เมื่อมองหาเด็ก lxml.objectify ใช้เวลา '{} แท็ก' เป็นความหมาย namespace ที่ว่างเปล่าเมื่อเทียบกับผู้ปกครอง namespace.
- บักคงที่:
- เมื่ออ่านเสร็จจากวัตถุไฟล์เหมือน parser ทันทีเรียก .close ของวิธี ().
- เมื่อแยกเสร็จแล้ว iterparse () ทันทีปิดแฟ้มใส่.
- การทำงานรอบสำหรับข้อผิดพลาด libxml2 ที่สามารถออกจากตัวแยกวิเคราะห์ HTML อยู่ในสถานะที่ไม่ทำงานหลังจากแยก severly เอกสารหัก (แก้ไขใน libxml2 2.7.8).
- แท็ก Marque ในรหัส HTML การทำความสะอาดอย่างถูกต้องชื่อปะรำ.
- การเปลี่ยนแปลงอื่น ๆ :
- บางฟังก์ชั่นของประชาชนใน Cython ระดับ C-API มีชนิดผลตอบแทนที่ชัดเจนมากขึ้น.
มีอะไรใหม่ ในรุ่น 2.3beta1:
- บักคงที่:
- การแข่งขันในรุ่นใหม่ libxml2 เมื่อมีการย้ายองค์ประกอบระหว่างเอกสารที่มีคุณลักษณะในการแทนที่โหนด XInclude.
- XMLID () ฟังก์ชั่นที่ขาดหายไปแยกวิเคราะห์ตัวเลือกและพารามิเตอร์ base_url.
- กำลังหาตัวแทนในแท็ก iterparse () ถูกทำลายใน Py3.
- lxml.html.open_in_browser () ไม่ได้ทำงานในหลาม 3 เนื่องจากการใช้ os.tempnam ตอนนี้มันต้องใช้ตัวเลือก 'การเข้ารหัส' พารามิเตอร์.
ความคิดเห็นที่ไม่พบ