我正在編寫一個ruby腳本來搜索網頁。這裏是代碼: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'))必須是頁面上的鏈接才能使代碼正常工作。但問題是,當我執行web搜索時(bing,yahoo,google,等等),數百個鏈接出現了,我怎樣才能以編程的方式點擊鏈接而不知道鏈接的確切名稱?我希望能夠點擊一個鏈接,如果鏈接的名稱部分(或完全)匹配一個文本,我。指定或點擊一個鏈接,如果它有一定的URL任何幫助,將不勝感激
如果你已經知道的URL,爲什麼不直接去那個網址是什麼?無論如何,似乎你想收集所有的鏈接,過濾一些標準,並點擊那些滿足? – Amadan
不要刮他們的前端頁面,而是使用他們的API。 –
嘗試傳遞正則表達式而不是字符串,也許? – Adrian