麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Ruby > 正文

Ruby中的Mechanize的使用教程

2020-10-29 19:42:25
字體:
來源:轉載
供稿:網友

Ruby中實現網頁抓取,一般用的是mechanize,使用非常簡單。

安裝

復制代碼 代碼如下:

sudo gem install mechanize

抓取網頁
復制代碼 代碼如下:

require 'rubygems'
require 'mechanize'
agent = Mechanize.new
page = agent.get('http://google.com/')

模擬點擊事件
復制代碼 代碼如下:

page = agent.page.link_with(:text => 'News').click

模擬表單提交
復制代碼 代碼如下:

google_form = page.form('f')
google_form["q"] = 'ruby mechanize'
page = agent.submit(google_form, google_form.buttons.first)
pp page

分析頁面,mechanize用的是nokogiri解析網頁的,所以可以參照nokogiri的文檔
復制代碼 代碼如下:

table = page.search('a')
text = table.inner_text
puts text

有幾點注意的地方: 如果需要先登錄的網頁,那么可以在網站先登錄,登錄后記錄JSESSIONID,然后賦值給agent
復制代碼 代碼如下:

cookie = Mechanize::Cookie.new("JSESSIONID", "BA58528B76124698AD033EE6DF12B986:-1")
cookie.domain = "datamirror.csdb.cn"
cookie.path = "/"
agent.cookie_jar.add!(cookie)

如果需要保存網頁,使用.save_as,(或許save也可以,我沒試過)例如
復制代碼 代碼如下:

agent.get("http://google.com").save_as

小技巧

puts Mechanize::AGENT_ALIASES 可以打印出所有可用的user_agent
puts Mechanize.instance_methods(false) 輸出Mechanize模塊的所有方法
puts Mechanize.instance_methods()   輸出Mechanize模塊的所有方法以及所繼承的類的函數

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 一级一级一级一级毛片 | 美女视频黄a视频免费全过程 | 护士hd欧美free性xxxx | 日美黄色片 | 特级a欧美做爰片毛片 | 午夜在线观看视频网站 | 亚洲第五色综合网 | 国产精品99久久久久久久女警 | 国产成人高潮免费观看精品 | 日韩黄色一区 | 依人在线视频 | 日本大片在线播放 | 综合网日日天干夜夜久久 | 久久亚洲美女视频 | 国产精品高潮视频 | 成人午夜视频免费 | 国产精品麻豆91 | 中文字幕在线视频网站 | 久久久麻豆 | 亚洲乱操 | 蜜桃视频在线免费观看 | 视频一区国产精品 | 免费视频www在线观看 | 国产午夜精品一区二区三区嫩草 | 黄色视品| 久久av免费 | 久久9999久久| 一级爱爱| 久久久综| 欧美三级欧美成人高清www | 福利在线小视频 | 午夜国产在线 | 久久露脸国语精品国产91 | 成人在线视频网 | 一边吃奶一边摸下娇喘 | 99爱福利视频在线观看 | 亚洲成人在线视频网站 | 国产一区二区在线免费 | 人人做人人看 | 成人毛片100免费观看 | 极色品影院|