我試圖使用機械化來從頁面中尋找一些標籤。我已經成功地使用了Nokogiri來刮擦它們,但現在我正試圖將它們組合成更廣泛的機械類。這裏是引入nokogiri聲明:如何將Nokogiri聲明轉換爲機械化以進行屏幕抓取?
page = Nokogiri::HTML(open(@model.url, "User-Agent" => request.env['HTTP_USER_AGENT']))
@model.icons = page.css("link[rel='apple-touch-icon']").to_s
而且這裏是我認爲將是等效的機械化,但它不工作:
agent = Mechanize.new
page = agent.get(@model.url, "User-Agent" => request.env['HTTP_USER_AGENT'])
@model.icons = page.search("link[rel='apple-touch-icon']").to_s
第一個返回的鏈接標籤如預期<link rel="apple-touch-icon" etc etc..></link>
。第二個語句返回一個空白字符串。如果我把to_s
關閉,我會得到超長的輸出。我認爲這是一個錯誤或實際的機械化對象或其他東西。
鏈接到長時間的輸出時不轉換爲字符串:https://gist.github.com/eadam/5583541
定義「不工作」。作爲「搜索」方法的返回值,你會得到什麼?你期望得到什麼?如果您指向我們的網頁或包含適當的代碼段,這也會很有幫助。 – 2013-05-14 00:42:32
我用完整的語句和不工作的定義更新了問題。謝謝。 – Adam 2013-05-14 22:37:49
你可以發佈你獲得的「超長輸出」嗎? – 2013-05-15 02:27:14