草庐IT

emacs-for-python

全部标签

python - 如何使用 Python 将命名空间和前缀插入到 XML 字符串中?

假设我有一个XML字符串:thingstuff我想插入一个XML模式使用的类型的命名空间,在所有元素名称前放置一个前缀。thingstuff有没有办法使用lxml.etree或类似的库来做到这一点(除了蛮力查找替换或正则表达式)? 最佳答案 我认为仅使用ElementTree无法做到这一点。操作namespace有时会非常棘手。SO上有很多关于它的问题。即使使用更高级的lxml图书馆,真的很难。查看这些相关问题:lxml:addnamespacetoinputfileModifynamespacesinagivenxmldocume

python - odoo context.get.active_id 不工作

我在ODOO8的学校管理系统中创建了一个注册模块。在该模块中,我有一个名为enrollment_ids的one2many字段。我想在创建新注册时激活registration_id。但它不起作用。这是我的代码。defdefault_get(self,cr,uid,fields,context=None):data=super(op_enrollment,self).default_get(cr,uid,fields,context=context)registration_id=context.get('active_id',False)returnTrue为什么我获取不到活跃的regi

python - 使用python显示xml中元素的内容

etree用于显示我的xml文件,并且非常适合显示特定元素的属性,但现在我需要显示元素的内容。输入xmlSystemgradientdrivercurrentcommand-1.72mA/LSBCalculatedECCcurrentcommand-1.72mA/LSBPython代码fromlxmlimportetreexml_file=etree.parse('file1.xml')input_1=open("sample_template.txt","r")output=open("output.txt","w+")i=0k=0fornodeininput_file.iter()

python - 在另一棵树下插入一棵树(lxml)

我需要将一棵XML树的全部内容插入到另一棵树中(在其带有特定标记的元素下)。我正在使用iter()方法迭代要修改的树的元素。问题是,第一棵树由于某种原因只被插入一次。谁能告诉我我做错了什么?fromlxmlimportetree#Creatingthefirsttreeroot1=etree.Element('root',name='Rootnumberone')tree1=etree.ElementTree(root1)forninrange(1,5):new_element=etree.SubElement(root1,'element'+str(n))new_child=etre

sql - 使用 FOR XML EXPLICIT 时删除 xmlns ="" namespace 声明

我正在使用FORXMLEXPLICIT生成XML文档:declare@MyTabletable(valuexml);insertinto@MyTablevalues('content1'),('content2'),('content3');select1asTag,nullasParent,valueas[x!1!!xml]from@MyTableforxmlexplicit;并得到这样的响应:content1content2content3问题是我不需要xmlns属性。我找到了一个解决方案,但它似乎是一个拼凑。select1asTag,nullasParent,cast(value

sql-server - FOR XML ... TYPE 比 FOR XML 慢多少?

运行SQLServer2014。我有一个返回相当大的XML的存储过程。它是这样的:SELECT(...FORXMLPATH(N''),ROOT,TYPE现在,该查询在1秒内运行。如果我删除TYPE,它会在大约一半的时间内运行:SELECT(...FORXMLPATH(N''),ROOT显然,后者返回一个nvarchar(max)而不是xml。我想要xml数据,但如果我要求xml,它会变慢!如果我想在客户端获取xml数据,是否真的需要使用上面的TYPE指令将其转换为xml?问:无论如何,为什么FORXML...TYPE显着比FORXML...?有什么办法可以提高转化率吗?

python - 从维基数据 API 获取 python 中的项目标签

我正在尝试使用维基数据API创建一个包含所有哈利波特角色名称的列表。我想从下面的链接中获取项目标签(字符名称)到我的Python笔记本中。这是按照我的意愿运行的维基数据查询服务查询。importrequestsimportjsonhpCharURL="https://query.wikidata.org/sparql?query=SELECTDISTINCT?item?itemLabelWHERE{{?itemwdt:P31?sub1.?sub1(wdt:P279|wdt:P131)*wd:Q95074.?itemwdt:P1080?sub2.?sub2(wdt:P279|wdt:P1

python - 使用 python ElementTree 过滤 xml/nessus 扫描

Python初学者需要帮助过滤.xml文件。我一直在尝试使用xml.etree.ElementTree但收效甚微。xml看起来像这样:Ipsumloremetcleviosa!Sedutperspiciatisundeomnisiste如果ReportItem.pluginID与黑名单上的项目匹配,我想删除整个元素(ReportItem)及其子元素,然后编写过滤后的.xml。谢谢!编辑-这是我目前所做的,但我不确定如何让它与这种嵌套级别一起工作:fromxml.etree.ElementTreeimportElementTreetree=ElementTree()#Testinputt

python - 如何通过 XPath 选择最后一个 p 元素之前的所有元素?

ABCDE如何获取最后一个p之前的所有元素?我想要p、h2、p和h5:ABCD。我试过:item['contents']=''.join(response.xpath('//*[@id="something"]/preceding-sibling::*p//text()').extract()).strip()item['contents']=''.join(response.xpath('//*[@id="something"]/preceding-sibling::p[last()]//text()').extract()).strip()item['contents']=''.j

python - 如何使用许多 OR 替代项来缩短长 XPath 表达式?

我正在努力让Selenium通过大量可选的条件XPath,寻找可能匹配的元素——并将其传递给对象elmnt.目前,使用OR运算符(|),代码很快就会变得非常重复和详尽,尤其是当有很多可能的变化时。在下面的示例中,唯一的变化是我开始寻找h1,h2,或h3.其余相同。forwordin["testString1","testString2","testString3"]:try:elmnt=driver.find_element_by_xpath(("//h1[text()[contains(.,'%s')]]"%word+"/following::p"+"|"+"//h1[text()[