我想单击 html 页面中的链接,其中包含以下代码段:
<p>Die maximale Trefferanzahl von 200 wurde überschritten.
<a href="/rp_web/search.do?doppelt">Verdoppeln Sie hier Suchergebnislimit.</a>
</p>
Run Code Online (Sandbox Code Playgroud)
我之前设置了一些过滤器,然后我正在加载页面,这将加载我需要的页面。在结果页面上,我想单击 html 代码段中的链接。我正在尝试使用的 js 是这个
await Promise.all([
page.click('input#landNW'), // set a filter
page.click('input[type=submit]'), // submit the form
page.waitForNavigation(), // wait for the page to load
page.click('p a'), // not working: double the search results
page.waitForNavigation() // not working: waiting for the page to reload
]).catch(e => console.log(e)); // no error
Run Code Online (Sandbox Code Playgroud)
我很确定page.click('p a')它工作正常,因为在我的 chrome 浏览器的控制台中我可以做document.querySelector("p a").click(),然后按预期重新加载页面。
我还尝试通过使用 href attr 来选择 url,例如 …
我想迭代结构体的字段并为每次迭代访问其各自的值:
#[derive(Default, Debug)]
struct A {
foo: String,
bar: String,
baz: String
}
fn main() {
let fields = vec!["foo", "bar", "baz"];
let a: A = Default::default();
for field in fields {
let value = a[field] // this doesn't work
}
}
Run Code Online (Sandbox Code Playgroud)
如何通过变量访问字段?