相关疑难解决方法(0)

如何将XML转换为Python对象?

我需要加载XML文件并将内容转换为面向对象的Python结构.我想接受这个:

<main>
    <object1 attr="name">content</object>
</main>
Run Code Online (Sandbox Code Playgroud)

把它变成这样的东西:

main
main.object1 = "content"
main.object1.attr = "name"
Run Code Online (Sandbox Code Playgroud)

XML数据将具有比这更复杂的结构,我不能硬编码元素名称.解析时需要收集属性名称并将其用作对象属性.

如何将XML数据转换为Python对象?

python xml

36
推荐指数
2
解决办法
3万
查看次数

不支持带编码声明的XML Unicode字符串

试着做以下......

from lxml import etree
from lxml.etree import fromstring

if request.POST:
    parser = etree.XMLParser(ns_clean=True, recover=True)
    h = fromstring(request.POST['xml'], parser=parser)
    return HttpResponse(h.cssselect('itagg_delivery_receipt status').text_content())
Run Code Online (Sandbox Code Playgroud)

但它给出了这个错误:

[Fri Apr 05 10:27:54 2013] [error] Internal Server Error: /sms/status_postback/
[Fri Apr 05 10:27:54 2013] [error] Traceback (most recent call last):
[Fri Apr 05 10:27:54 2013] [error]   File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 115, in get_response
[Fri Apr 05 10:27:54 2013] [error]     response = callback(request, *callback_args, **callback_kwargs)
[Fri Apr 05 10:27:54 2013] [error]   File "/usr/local/lib/python2.7/dist-packages/django/views/decorators/csrf.py", line 77, in wrapped_view
[Fri …
Run Code Online (Sandbox Code Playgroud)

python xml django

23
推荐指数
3
解决办法
2万
查看次数

使用lxml和request进行HTML抓取会产生unicode错误

我正在尝试像这里提供的那样使用HTML scraper .它适用于他们提供的示例.但是,当我尝试在我的网页上使用它时,我收到此错误 - Unicode strings with encoding declaration are not supported. Please use bytes input or XML fragments without declaration. 我尝试使用Google搜索但无法找到解决方案.我真的很感激任何帮助.我想知道是否有办法使用Python将其复制为HTML.

编辑:

from lxml import html
import requests
page = requests.get('http://cancer.sanger.ac.uk/cosmic/gene/analysis?ln=PTEN&ln1=PTEN&start=130&end=140&coords=bp%3AAA&sn=&ss=&hn=&sh=&id=15#')
tree = html.fromstring(page.text)
Run Code Online (Sandbox Code Playgroud)

谢谢.

html python unicode lxml web-scraping

21
推荐指数
1
解决办法
7965
查看次数

标签 统计

python ×3

xml ×2

django ×1

html ×1

lxml ×1

unicode ×1

web-scraping ×1