Mechanize でリンクをクリックする

2020/04/19

Mechanize でスクレイピングをする。 とりあえず基本的?なものを試してみた。

例. リンクをクリックする

<a href="hoge.php" name="link1">hoge</a>
<a href="fuga.php" name="link2">hoge</a>

上記のリンクをクリックを表すのはこのどれかで OK っぽい。

agent.page.link_with(:src => "hoge.php").click
agent.page.link_with(:name => "link1").click
agent.page.link_with(:text => "hoge").click

link_withs を使うと、同条件にかかる情報を配列で返してくる

#例えばテキストが「hoge」の2つ目のリンクをクリックするとする
agent.page.link_withs(:text => "hoge")[1].click

# 正規表現も使える
agent.page.link_with(:src => /fuga.*/).click