草庐IT

一、Python语言概述

全部标签

Python直接从网址解析xml

嘿。我试图找到一种方法,但我做不到。我已经在python中设置了一个xml.sax解析器,当我读取一个本地文件(例如calendar.xml)时它工作得很好,但我需要从一个网址读取一个xml文件。我想如果我这样做会行得通:toursxml='http://api.songkick.com/api/3.0/artists/mbid:'+mbid+'/calendar.xml?apikey=---------'toursurl=urllib2.urlopen(toursxml)toursurl=toursurl.read()parser.parse(toursurl)但事实并非如此。我确定

python - 从外籍人士的解析错误中优雅地恢复

XML应该是严格的,因此有一些Unicode字符在XML中是不允许的。但是,我正在尝试使用通常包含这些字符的RSS提要,并且我想避免因无效字符造成的解析错误,或者从中优雅地恢复并呈现文档。请在此处查看示例(无论如何在3月21日):http://feeds.feedburner.com/chrisblattman处理XML提要中的unicode的推荐方法是什么?检测字符并替换为空字节、编辑解析器或其他一些方法? 最佳答案 看起来RSS提要包含一个垂直制表符\x0c,这是非法的pertheXML1.0spec.我的建议是在将数据传递给e

xml - 将更新的 XMLDocument 保存为字符串(vb.net 或其他 .net 语言。)

我在mySQL表的字段中有一个XMl字符串。我从该字符串加载一个XMLdocument(xmlDoc)然后我搜索一个节点并更改一个属性。一切都在这里。然后我想以字符串格式保存对XMLDocument所做的更改,以便我可以更新数据库中的表。我该怎么做。?如果我执行xmldoc.save(),它会保存一个XML文件。如何保存我所做的更改而不是保存文件,而是将其保存为字符串以便我可以将其保存在我的表中。我真的不想将XML字符串解析为普通字符串来搜索我的参数并保存它。我正在使用vb.net,但如果您有其他.net语言的代码,没问题。数据库在MySQL中 最佳答案

python - 使用 lxml 解析 DTD 时出错

我正在尝试编写一个验证脚本来根据NITFDTD验证XML,http://www.iptc.org/std/NITF/3.4/specification/dtd/nitf-3-4.dtd.基于thispost我提出了以下简单脚本来验证NITFXML文档。Bellow是我在运行脚本时收到的错误消息,它不是很具有描述性并且很难调试。感谢您的帮助。#!/usr/bin/envpythondefmain():fromlxmlimportetree,objectifyfromStringIOimportStringIOf=open('nitf_test.xml')xml_doc=f.read()f

xml - 使用自定义标记/结构化语言与 XML 的设计注意事项是什么

我想要一些结构化数据的文本界面,我想将这些数据放入mySQL表中。目前它在文本中使用下面的符号。我试图理解为什么使用XML-基本上我的字段在XML标记中的位置,而不是使用“自定义标记/结构”/**/、-和|表示表和字段。我有代码可以将其放入mySQL并提取它。我只是觉得使用这种表示法有点像hack。稍后结构化数据文件将用于导入和导出数据,有点像导出书签时的InternetExplorer。/*Table*/-Field1|Field2|Field3-Field1|Field2|Field3与XML相比,使用自定义标记语言的设计注意事项是什么? 最佳答案

python - 使用带有转义字符作为参数的 XML 使用 WSDL url

我正在执行一个SOAPWeb服务的方法,该方法使用suds库接收3个字符串参数。第一个字符串参数应该是一个XML,另外两个是用户名和密码,这是我的半工作实现。fromsuds.clientimportClienturl="http://www.jonima.com.mx:3014/sefacturapac/TimbradoService?wsdl"client=Client(url)client.service.timbrado(XML_AS_STRING_HERE,'PRUEBA1','12345678')当第一个参数包含转义字符(&符号、引号、撇号、小于、大于)时,方法不起作用,因

python - 下载没有 Python unicode 错误的 html

我正在尝试将page_source下载到文件中。但是,每次我得到:UnicodeDecodeError:'ascii'codeccan'tdecodebyte0xc2(orsomethingelse)inposition8304:ordinalnotinrange(128)我试过使用value.encode('utf-8'),但似乎每次它都会抛出相同的异常(除了手动尝试替换每个非ascii字符之外).有没有办法“预处理”html以将其转换为“可写”格式? 最佳答案 有第三方库如BeautifulSoup和lxml可以自动处理编码问题

python - 有什么方法可以知道 ElementTree DOM 消耗了多少内存?

假设您执行以下操作:dom=ElementTree()dom.parse(some_file_path)我想记录这个dom现在在我的进程中使用的粗略内存量。我不需要精确的东西,粗略的东西就可以了。我认为我无法从源XML文件的大小中得出它。我有一个500KB的文件,如上例所示,它在加载python进程后似乎增加了大约5MB的内存使用量。我查看了ElementTreeAPI,没有看到任何提供此信息的API。有人知道在解析/加载XML文件后了解ElementTree实例使用了多少内存的方法吗? 最佳答案 本质上,您想要查找特定python

python - BeautifulSoup XML 仅打印第一行

我正在使用BeautifulSoup4(和lxml)解析XML文件,出于某种原因,当我打印soup.prettify()时它只打印第一行:frombs4importBeautifulSoupf=open('xmlDoc.xml',"r")soup=BeautifulSoup(f,'xml')printsoup.prettify()#>>>知道为什么它没有抓取所有内容吗?更新:test 最佳答案 文件位置在EOF:>>>soup=BeautifulSoup("",'xml')>>>soup.prettify()'\n'或者内容不是有效

Python ElementTree find() 在 kml 文件中不匹配

我正在尝试使用元素树从kml文件中查找元素,如下所示:fromxml.etree.ElementTreeimportElementTreetree=ElementTree()tree.parse("history-03-02-2012.kml")p=tree.find(".//name")该文件的足够子集如下所示:Locationhistoryfrom03/03/2012to03/10/2012“名称”元素存在;为什么搜索结果是空的? 最佳答案 您尝试匹配的name元素实际上位于KML命名空间内,但您并未考虑该命名空间进行搜索。尝试