使用contains('text', 'some text')
可行,但是我想检查它是否仅包含我要插入的内容。我发现contains(text()="some text")
,但它返回的参数无效。.你能告诉我什么是有问题吗?
lxml.etree.XPathEvalError: Invalid number of arguments
谢谢。
from requests_html import HTMLSession
session = HTMLSession()
html_source = session.get('any website')
passengers = html_source.html.xpath('*//div//h2[contains(text()="Passengers")]//ancestor::div[contains(@class, "wpb_wrapper")]')[1:-4]
for passenger in passengers:
print(passenger.attrs)
答案 0 :(得分:0)
r=sessions.get('https://stackoverflow.com/questions/55566739/text-from-xpath-returns-error-invalid-argument')r.html.xpath('//div[@id="question-header"]/h1[contains(text(),"from xpath returns")]')
question=r.html.xpath('//div[@id="question-header"]/h1[contains(text(),"from xpath returns")]')
[“ xpath中的''text()'返回错误,参数无效”] 这是输出
请参见示例并相应地更改xpath。如果您给了正确的URL,我可以更清楚地知道。我使用的URL是此页面的URL,输出是Your Question标题。希望这会有所帮助。