Sev*_*rin 3 ruby ruby-on-rails mechanize ruby-2.0
我想知道是否有办法检查你有链接的文件的大小?
我已经从一个站点提取了一个图像的路径(带有机械化),并希望根据文件大小在其上设置一个转换为true或false的条件.
page = Mechanize.new.get(http://www.someurl.com/).parser
image = page.search('//img[@id="img1"]/@src').text
Run Code Online (Sandbox Code Playgroud)
现在,我想要做的是检查文件大小image.对于本地文件,我可以做一些事情,File.size以获得其大小的字节.有没有办法检查大小image?
我认为Mechanize#head方法可行:
image_size = Mechanize.new.head( image_url )["content-length"].to_i
Run Code Online (Sandbox Code Playgroud)
HTTP HEAD请求是一个鲜为人知的HTTP表兄GET,其中服务器应该使用相同的头响应,就像执行GET请求一样,但不包括正文.它经常用于Web缓存.
手机/ eBay的例子(Arup Rakshit要求)
start_url = 'http://www.ebay.in/sch/Mobile-Phones-/15032/i.html'
crawler = Mechanize.new
page = crawler.get( start_url ).parser
image_url = page.search('//img/@src').first.text
image_size = crawler.head( image_url )["content-length"].to_i
=> 4244
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1390 次 |
| 最近记录: |