我是 Jmeter 的正则表达式提取器的新手。对于 HTTP 请求,我得到一个 HTML 响应。我想提取一个电子邮件地址,该地址是该响应中的隐藏值,用于后续请求。
字符串是:
<input type="hidden" name="login" id="login" value="abs12.test@test.com" >
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
我正在使用 apache JXPath 库来解析 XML。我试图在 JXPath 中找到一个 API,它的功能与 XPath 评估类似,即检查 xpath 表达式是否存在?它的相似之处在于
<xsl:when test="
Run Code Online (Sandbox Code Playgroud)
使用 xslt 时。使用 XPath 我可以类似地做
XPathFactory xpathFactory = XPathFactory.newInstance();
XPath xpath = xpathFactory.newXPath();
InputSource source = new InputSource(new StringReader(xml));
status = xpath.evaluate("/resp/status/solution", source);
Run Code Online (Sandbox Code Playgroud)
如果解决方案不存在,那么它会将状态返回为空。现在,在使用 JXPath 时,我无法在类似的行中找出 API。这是我的示例代码
DocumentBuilderFactory dbfactory = DocumentBuilderFactory.newInstance();
DocumentBuilder bld = dbfactory.newDocumentBuilder();
文档 metaDoc = bld.parse(in);
JXPathContext metaCtx = JXPathContext.newContext(metaDoc);
节点 node = (Node)metaCtx.selectSingleNode("/resp/status/solution");
这将引发“JXPathNotFoundException:xpath 无值”。对于实现特定的逻辑,如果表达式不返回数据/不存在,我需要放置和 if-else 块。
任何关于此的指针将不胜感激。
谢谢
对于我的一生,我不明白为什么我无法获取 th 下方的 td 文本。
我试过这个('//th(contains(text(), "Text I Need Is After This")]')它确实抓住了它打算抓住的实际行,但我试图抓住的是下面的 td/a 链接中的文本。
追加('//th(contains(text(), "Text I Need Is After This")]/td/a')或只是 ('//th(contains(text(), "Text I Need Is After This") ")]/td')没有找到任何匹配项。
这是 HTML
<tr class="">
<th scope="row" style="text-align:left;">Text I Need Is After This</th>
<td class="" style="">
<a href="/wiki/Queens" title="Queens">Queens</a>,
<a href="/wiki/New_York" title="New York">New York</a>,
<a href="/wiki/United_States" title="United States">United States</a>
</td>
</tr>
Run Code Online (Sandbox Code Playgroud) 如果我没有获得该 HTML 元素的 id 或名称或类,如何在 Selenium Python 中使用 CSS 选择器?与 XPath 相比,更喜欢 CSS 怎么样?
什么应该是 xpath 查询来选择属性 att 不存在的元素。
<root>
<elem att='the value' />
<elem att='the value' />
<elem att='the value' />
**<elem />**
<elem att='the value' />
<elem att='the value' />
</root>
Run Code Online (Sandbox Code Playgroud)
我想更新属性 att 不存在的元素。
谢谢
我正在尝试使用 Java 中的 XPath 更改 XML 文件的特定标记的值。我正在尝试使用 XpathFactory 来实现这一点,但无法实现。如果有更好的方法,请纠正我。
爪哇代码..
public class MavenMetadataReader {
/**
* @param args the command line arguments
*/
public static void main(String[] args) throws XMLStreamException {
Scanner user_input = new Scanner( System.in );
String updated_pom_version;
System.out.println("Enter updated version:");
updated_pom_version = user_input.next( );
File xpath=new File("D:\\Lucy\\trunk\\pom.xml");
XPathFactory xfactory = XPathFactory.newInstance();
XPath xpathObj = xfactory.newXPath();
Node node;
try {
node = (Node)xpathObj.evaluate(xpath, doc, XPathConstants.NODE);
} catch (XPathExpressionException e) {
throw new RuntimeException(e);
}
node.setTextContent(elementValue);
Run Code Online (Sandbox Code Playgroud)
XML文件..
<?xml version="1.0" …Run Code Online (Sandbox Code Playgroud) 因此,我对使用 XPath 还比较陌生,而且我在磨练我需要用于我的特定应用程序的确切语法方面遇到了一些困难。我构建的刮板工作得非常好(当我使用不太复杂的路径时,它可以工作)。一旦我尝试更具体地了解我的路径,它就不会返回正确的值。
我试图操纵的文档结构的简化模型是
<table class="rightLinks">
<tbody>
<tr>
<td>
<a href="http://wwww.example.com">Text That I want to Grab</a>
</td>
<td>Some</td>
<td>Text</td>
</tr>
<tr>
<td>
<a href="http://wwww.example2.com">Text That I want to Grab</a>
</td>
<td>Some</td>
<td>Text</td>
</tr>
<tr>
<td>
<a href="http://wwww.example3.com">Text That I want to Grab</a>
</td>
<td>Some</td>
<td>Text</td>
</tr>
<tr>
<td>
<a href="http://wwww.example4.com">Text That I want to Grab</a>
</td>
<td>Some</td>
<td>Text</td>
</tr>
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
基本上,我想获取 href 值和带有链接的文本。
这是我的刮板关于这个以及我迄今为止尝试过的部分:
import scrapy
from scrapy.selector import HtmlXPathSelector
from scrapy.http import HtmlResponse
def parse(self, response):
for sel …Run Code Online (Sandbox Code Playgroud) 我正在尝试从如下所示的 html 页面中提取文本内容:
<div class="content">
<div class="section">
Lorem <a href="..." class="link">ipsum</a>
dolor <a href="..." class="link">sit</a> amet,
consectetur <a href="..." class="link">adipiscing</a> elit
</div>
<div class="section">
sed do <a href="..." class="link">eiusmod</a> tempor
incididunt <a href="..." class="link">ut</a> labore
et <a href="..." class="link">dolore</a>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我只想提取文本部分:
Lorem ipsum dolor amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore
Run Code Online (Sandbox Code Playgroud)
我的 XPath (2.0) 表达式是//*[contains(@class, 'section')]. 当我使用 评估它时javax.xml.xpath.XPathExpression,我只检索链接之外的文本:
Lorem dolor amet, consectetur elit, sed do tempor incididunt labore et …Run Code Online (Sandbox Code Playgroud) 我在 Google 文档中使用 Xpath 来获取里面的文本<div>。我想将其中的文本保存在<div id="job_description">Google 文档电子表格的一个单元格中,但每个<div>单元格都显示在单独的单元格中。
<div id="job_description">
<div>
<strong>
Basic Purpose:
</strong>
<br></br>
</div>
<div>
Work closely with developers, product owners and Q…
<br></br>
</div>
<div>
The Test Analyst is accountable for the developmen…
<br></br>
</div>
<div>
<strong>
Duties and Responsibilities:
</strong>
</div>
<ul>
<li></li>
<li></li>
</ul>
<div>
<strong>
Requirements:
</strong>
<br></br>
</div>
<ul>
<li></li>
<li></li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
图片:http : //i.stack.imgur.com/K0mAY.png
这是我写的代码:
=IMPORTXML(E4,"//div[@id='job_description']")
Run Code Online (Sandbox Code Playgroud)
你能帮我把所有的文本(包括<div> <ul>......)放在<div id="job_description">一个单元格中吗?
以下是元素描述:
<div class="css-control-textinput-122aa"><input type="text" aria-required="true" disabled="" required=""</div>
Run Code Online (Sandbox Code Playgroud)
在上面的类中有名称css-control-textinput-122aa,但这里122aa没有固定值,它会被更改.那么如何才能使用仅className从头开始查找元素css-control-textinput?
在我尝试的代码下面,但它不起作用:
@FindBy (className = "css-fauxcontrol-textinput-^")
List<WebElement> dataSourceName;
Run Code Online (Sandbox Code Playgroud) xpath ×10
java ×4
selenium ×3
html ×2
c# ×1
google-docs ×1
jmeter ×1
jxpath ×1
python ×1
python-2.7 ×1
regex ×1
scraper ×1
scrapy ×1
spreadsheet ×1
xml ×1
xml-parsing ×1