gpt4 book ai didi

ruby Mechanize : Programmatically Clicking a Link Without Knowing the Name of the Link

转载 作者:太空宇宙 更新时间:2023-11-03 15:59:54 25 4
gpt4 key购买 nike

我正在编写一个 ruby​​ 脚本来搜索网络。这是代码:

require 'mechanize'

mechanize = Mechanize.new
page = mechanize.get('http://www.example.com/)
example_page = page.link_with(:text => 'example').click
puts example_page.body

上面的代码工作正常。文本 'example' ((:text => 'example') 必须是页面上的链接才能使代码正常工作。但是,问题是当我进行网络搜索时(bing、yahoo、google、等),出现数百个链接。我如何在不知道链接的确切名称的情况下以编程方式单击链接?如果链接的名称部分(或完全)匹配我想要的文本,我希望能够单击该链接指定或单击具有特定 URL 的链接。我们将不胜感激。

最佳答案

Mechanize 有正则表达式:

page.link_with(text: /foo/).click
page.link_with(href: /foo/).click

以下是通常适用于链接和表单的 Mechanize 标准:

name: name_matcher
id: id_matcher
class: class_matcher
search: search_expression
xpath: xpath_expression
css: css_expression
action: action_matcher
...

如果你很好奇,这里是 Mechanize ElementMatcher code

关于 ruby Mechanize : Programmatically Clicking a Link Without Knowing the Name of the Link,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27643358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com