我正在開發一個Rails應用程序,它搜索和擦除Reddit和Twitter,以返回查詢的相關標題。我試圖添加黑客新聞作爲額外的來源。我最初將使用Mechanize與HackerNews搜索頁面進行交互,但我似乎無法取得任何進展。我的第一個想法是讓這個工作在Ruby中,這樣我可以更好地理解如何構建到我的rails應用程序中。基本上我想獲取搜索結果標題和網址。這是我迄今爲止的,但我不知道如何繼續在Ruby中這樣做。搜索和刮黑客新聞 - 紅寶石
require 'mechanize'
agent = Mechanize.new
mech_page = agent.get('https://hn.algolia.com/')
form = mech_page.forms.first
form['q']= "ruby"
agent.submit(form)
任何想法或方向將非常感激!
更新7:30 pm EST ========================================= ============
這好像又回到我要找刮谷歌時:
require 'mechanize'
mechanize = Mechanize.new
url = "https://www.google.com"
page = mechanize.get(url)
form = page.forms.first
form['q'] = 'Ruby'
page = form.submit
page.search('.r a').each do |link|
puts link.text.strip
end
和回報:
"Ruby Programming Language"
"Ruby (programming language) - Wikipedia, the free encyclopedia"
"Ruby on Rails"
"Ruby | Codecademy"
"Ruby-Doc.org: Documenting the Ruby Language"
"RubyInstaller for Windows"
"Downloads - RubyInstaller"
"Images for Ruby"
"Learn Ruby with the Neo Ruby Koans"
"Programming Ruby: The Pragmatic Programmer's ... - Ruby-Doc.org"
但類似刮碼https://hn.algolia.com/ ...
require 'mechanize'
mechanize = Mechanize.new
url = "https://hn.algolia.com/"
page = mechanize.get(url)
form = page.forms.first
form['q'] = 'Ruby'
page = form.submit
page.search('.title a').each do |link|
puts link.text.strip
end
...即使結果顯示在運行查詢後的實際頁面上,也不會返回任何結果。任何想法如何我可以刮研究結果?檢查元素揭示類名稱爲「標題」,這是父母給的一個標籤
您需要縮小到特定問題的範圍。 –
你期望看到什麼?你取得了什麼? –
已更新。感謝您的見解。 –