Hướng dẫn how do you read data between xml tags in python? - làm cách nào để bạn đọc dữ liệu giữa các thẻ xml trong python?

4

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi đang sử dụng Python và cần tìm và truy xuất tất cả dữ liệu ký tự giữa các thẻ:

I need this stuff

Sau đó tôi muốn xuất dữ liệu tìm thấy vào một tệp khác. Tôi chỉ đang tìm kiếm một cách rất dễ dàng và hiệu quả để làm điều này.

Nếu bạn có thể đăng một đoạn mã nhanh để mô tả sự dễ sử dụng. Bởi vì tôi đang gặp một chút rắc rối khi hiểu các trình phân tích cú pháp.

hỏi ngày 19 tháng 1 năm 2010 lúc 23:07Jan 19, 2010 at 23:07

Hướng dẫn how do you read data between xml tags in python? - làm cách nào để bạn đọc dữ liệu giữa các thẻ xml trong python?

Đệ quyRecursion

2.8577 Huy hiệu vàng37 Huy hiệu bạc 50 Huy hiệu Đồng7 gold badges37 silver badges50 bronze badges

Không có các mô -đun bên ngoài, ví dụ

>>> myhtml = """ I need this stuff
... blah blah
... I need this stuff too
... 
... blah blah """
>>> for item in myhtml.split(""):
...   if "" in item:
...       print item [ item.find("")+len("") : ]
...
I need this stuff
I need this stuff too

Đã trả lời ngày 20 tháng 1 năm 2010 lúc 0:00Jan 20, 2010 at 0:00

ghostdog74ghostdog74ghostdog74

Phù bằng vàng 315K5555 gold badges253 silver badges341 bronze badges

1

Súp đẹp là một trình phân tích cú pháp HTML/XML tuyệt vời cho Python:

Súp đẹp là một trình phân tích cú pháp Python HTML/XML được thiết kế cho các dự án quay vòng nhanh như xẹp màn hình. Ba tính năng làm cho nó mạnh mẽ:

  1. Súp đẹp sẽ không bị nghẹt thở nếu bạn cho nó đánh dấu xấu. Nó mang lại một cây phân tích có ý nghĩa gần như tài liệu gốc của bạn. Điều này thường đủ tốt để thu thập dữ liệu bạn cần và chạy trốn.
  2. Súp đẹp cung cấp một vài phương pháp đơn giản và thành ngữ pythonic để điều hướng, tìm kiếm và sửa đổi một cây phân tích: một bộ công cụ để mổ xẻ một tài liệu và trích xuất những gì bạn cần. Bạn không phải tạo trình phân tích cú pháp tùy chỉnh cho mỗi ứng dụng.
  3. Súp đẹp tự động chuyển đổi các tài liệu đến thành unicode và các tài liệu đi thành UTF-8. Bạn không cần phải nghĩ về mã hóa, trừ khi tài liệu không chỉ định một món súp mã hóa và đẹp không thể tự động tự động. Sau đó, bạn chỉ cần chỉ định mã hóa gốc.

Đã trả lời ngày 19 tháng 1 năm 2010 lúc 23:10Jan 19, 2010 at 23:10

Hướng dẫn how do you read data between xml tags in python? - làm cách nào để bạn đọc dữ liệu giữa các thẻ xml trong python?

Andrew Hareandrew HareAndrew Hare

338K71 Huy hiệu vàng634 Huy hiệu bạc630 Huy hiệu Đồng71 gold badges634 silver badges630 bronze badges

Tôi khá thích phân tích cú pháp vào cây phần tử và sau đó sử dụng element.textelement.tail.

Nó cũng có xpath như tìm kiếmxpath like searching

>>> from xml.etree.ElementTree import ElementTree
>>> tree = ElementTree()
>>> tree.parse("index.xhtml")

>>> p = tree.find("body/p")     # Finds first occurrence of tag p in body
>>> p

>>> p.text
"Some text in the Paragraph"
>>> links = p.getiterator("a")  # Returns list of all links
>>> links
[, ]
>>> for i in links:             # Iterates through all found links
...     i.attrib["target"] = "blank"
>>> tree.write("output.xhtml")

Đã trả lời ngày 19 tháng 1 năm 2010 lúc 23:11Jan 19, 2010 at 23:11

Aiden Bellaiden BellAiden Bell

Phù bằng vàng 28k372 Huy hiệu bạc117 Huy hiệu đồng3 gold badges72 silver badges117 bronze badges

Đây là cách tôi đang làm điều đó:

    (myhtml.split('')[1]).split('')[0]

Hãy cho tôi biết nếu nó hoạt động!

Đã trả lời ngày 16 tháng 8 năm 2017 lúc 9:45Aug 16, 2017 at 9:45

Hướng dẫn how do you read data between xml tags in python? - làm cách nào để bạn đọc dữ liệu giữa các thẻ xml trong python?

Shravya Kshravya kShravya K

371 Huy hiệu bạc3 Huy hiệu đồng1 silver badge3 bronze badges

0

Sử dụng XPath và LXML;

from lxml import etree

pageInMemory = open("pageToParse.html", "r")

parsedPage = etree.HTML(pageInMemory)

yourListOfText = parsedPage.xpath("//tag//text()")

saveFile = open("savedFile", "w")
saveFile.writelines(yourListOfText)

pageInMemory.close()
saveFile.close()

Nhanh hơn so với súp đẹp.

Nếu bạn muốn kiểm tra Xpath của bạn - Tôi thấy XPather của Firefox cực kỳ hữu ích.

Ghi chú thêm:

  • lxml-an-underappreciated-web-scraping-library
  • web-scraping-with-lxml

Đã trả lời ngày 20 tháng 1 năm 2010 lúc 6:15Jan 20, 2010 at 6:15

Torgertorgertorger

2.1983 Huy hiệu vàng27 Huy hiệu bạc35 Huy hiệu Đồng3 gold badges27 silver badges35 bronze badges

1

def value_tag(s):
    i = s.index('>')
    s = s[i+1:]
    i = s.index('<')
    s = s[:i]
    return s

Đã trả lời ngày 16 tháng 5 năm 2017 lúc 23:05May 16, 2017 at 23:05

Làm cách nào để đọc nội dung XML trong Python?

Để đọc một tệp XML bằng ElementTree, trước tiên, chúng tôi nhập lớp ElementTree được tìm thấy bên trong thư viện XML, dưới tên ET (thông tin chung). Sau đó chuyển tên tệp của tệp XML cho ElementTree. Phương thức Parse (), để cho phép phân tích tệp XML của chúng tôi. Sau đó, nhận được gốc (thẻ cha) của tệp XML của chúng tôi bằng GetRoot ().

Làm cách nào để đọc thẻ XML?

Các thẻ XML là nhạy cảm với trường hợp và cả hai thẻ đều khác nhau.Các thẻ XML được sử dụng để xác định phạm vi của các phần tử trong tài liệu XML.Thuộc tính của thẻ XML: Có nhiều thuộc tính của các thẻ XML được thảo luận dưới đây: Mỗi tài liệu XML phải có một thẻ gốc bao quanh tài liệu XML.. The XML tags are used to define the scope of elements in XML document. Property of XML Tags: There are many property of XML tags which are discussed below: Every XML document must have a root tag which enclose the XML document.

XML hoạt động như thế nào trong Python?

Một lộ trình cho các trình phân tích cú pháp XML trong Python..
Chọn mô hình phân tích cú pháp XML bên phải.Mô hình đối tượng tài liệu (DOM) ....
Tìm hiểu về trình phân tích cú pháp XML trong thư viện tiêu chuẩn của Python.xml.dom.minidom: Thực hiện DOM tối thiểu.....
Khám phá thư viện trình phân tích cú pháp XML của bên thứ ba.....
Liên kết dữ liệu XML với các đối tượng Python.....
Xử lý bom XML với các trình phân tích cú pháp an toàn ..
Conclusion..

Làm cách nào để đọc chuỗi XML?

Bạn có thể phân tích tệp XML bằng biểu thức XPath, bạn có thể thực hiện chuyển đổi XSL, xác thực lược đồ XSD và thậm chí bạn có thể phân tích toàn bộ tệp XML dưới dạng chuỗi chỉ trong một vài dòng mã.using XPath expression, you can do XSL transformation, XSD schema validation and you can even parse whole XML file as String in just a couple of lines of code.