【问题标题】:Size of data scraped using ruby mechanize使用 ruby​​ mechanize 抓取的数据大小
【发布时间】:2013-03-19 05:25:06
【问题描述】:
agent = Mechanize.new
url = "---------------------------"
page = agent.get(url)

现在,我想知道我的互联网服务提供商用来抓取该数据的 KB(千字节)数据。

更具体地说,变量“page”的大小(KB)是多少?

【问题讨论】:

    标签: ruby ruby-on-rails-3.2 size mechanize webpage


    【解决方案1】:
    page.content.bytesize / 1024.0
    

    【讨论】:

    • 如果您还需要标题大小:(page.header.values.join("\n").bytesize + 2) / 1024.0
    • 我在我的桌面上将页面保存为“a.html”。右键单击“属性”并检查,其大小为 15.1kb。正如您所建议的, 1.9.3p385 :026 > ((a.header.values.join("\n").bytesize + 2)/1024.0) + (a.content.bytesize/1024.0) => 14.982421875... 14.98还是15.1???而且您正在注入“\ n”,这不会占用额外的空间吗?即使是 1 个字节也很重要,因为我要刮一整年……所以请告诉我绝对测量它的方法
    【解决方案2】:

    这真的是两件不同的事情。解压缩的响应正文的大小和传输的字节数。您可以通过检查page.body 获得第一个,第二个您需要测量响应和请求标头以及考虑 gzip 和重定向等内容。更不用说 dns 查询等了。

    【讨论】:

    • 你是对的......这就是我过去一天一直在尝试做的......但不会有一个简单的 ruby​​ 方法来找出我通过请求和接收多少 KB 的数据我的 ISP ..这次 ruby​​ 的机械化是这样做的...????
    • 不,这是网络适配器级别的东西。这不是机械化的用途。
    • 好吧,我将使用 page.body.bytesize 并显示一条消息,上面写着...由 Mechanize 传输的大约 KB 的 html...有时太多会很无聊...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多