我有一个HTML文档,我知道文档中存在的值。使用python如何获得该值的Xpath? (不是Xpath中的值)该值可能会出现多次,因此迭代方法的列表将非常有用。
例如,如果我希望Xpath为“bytearray”:
http://en.wikipedia.org/wiki/Python_(programming_language)
it is (using google Chrome)
//*[@id="mw-content-text"]/table[2]/tbody/tr[3]/td[1]/code
另一个例子
from lxml import etree
import StringIO
# Example of get value given Xpath (I know how to do this)
f = StringIO.StringIO('<foo><bar>xyz</bar></foo>')
tree = etree.parse(f)
r = tree.xpaths('/foo/bar')
print(r[0].text)
>>> xyz
# Example get Xpath given value. How do I do this ?
value = 'xyz'
path = getXpath(value)
for p in path:
print(p)
>>> /foo/bar
我没有停留在使用Xpath,我的目的是使用我知道在页面上的值的某种类型的位置信息来检索具有相同布局的页面上的未知值。我不是手动做什么,因为有数百个(值,位置)对。