`
arkxu
  • 浏览: 43209 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

用ruby写了一个简单的Gmail登陆和获取未读邮件(http协议)

阅读更多
主要是为了学习一下mechanize,没有用imap或者pop3,

require 'rubygems'
require 'mechanize'

agent = WWW::Mechanize.new

page = agent.get 'http://www.gmail.com'
form = page.forms.first
form.Email = 'YOUR GMAIL ACCOUNT'
form.Passwd = 'YOUR GMAIL PASSWORD'
page = agent.submit form

page = agent.get page.uri.to_s.sub(/\?.*$/, "?ui=html&zy=d")

page.search("//tr[@bgcolor='#ffffff']")  do |row|
  from, subject = *row.search("//b/text()")
  url = page.uri.to_s.sub(/\?.*$/, row.search("/td:eq(2)//a").first.attributes["href"])
  puts "From: #{from}\nSubject: #{subject}\nLink: #{url}\n\n"
  email = agent.get url
  puts email.search("//div[@class='msg']/")
  puts "\n\n"
end

分享到:
评论
1 楼 carlosbdw 2008-06-23  
试了一下,什么输出都没有。

相关推荐

    Ruby-Mail一个Ruby邮件库

    Ruby-Mail不仅限于构造和解析邮件,它还可以通过SMTP(简单邮件传输协议)发送邮件。只需配置SMTP服务器的详细信息,就能轻松发送邮件。 ```ruby mail.delivery_method :smtp, { address: 'smtp.gmail.com', port...

    ruby实现邮件收发

    在Ruby中,创建邮件时需要确保邮件头和邮件体之间有一个空行,以区分两者。 4. **使用POP接收邮件** 清单2展示了如何使用`Net::POP3`库从POP服务器获取邮件。`Net::POP3.delete_all`方法接收POP服务器地址、端口、...

    ruby收取邮件实例

    本文将深入解析一个Ruby脚本,该脚本用于通过POP3协议收取邮件,并对邮件进行处理与存储。 #### 知识点一:Ruby中的`Net::POP3`模块 `Net::POP3`是Ruby标准库中用于处理POP3协议的模块。POP3(Post Office ...

    Ruby-Postal一个完整和功能齐全的开源的邮件服务器

    Postal 是一个用 Ruby 开发的全面且功能强大的开源邮件服务器,专为处理电子邮件而设计。在深入了解 Postal 的特性之前,让我们先理解邮件服务器的基本概念。邮件服务器是互联网上用于发送、接收和管理电子邮件的...

    Ruby-Http2HTTP2协议的纯Ruby实现

    Ruby-Http2是HTTP/2协议的一个纯Ruby实现,它为Ruby开发者提供了一种高效、安全的方式来处理HTTP通信。HTTP/2是HTTP协议的最新版本,相比于早期的HTTP/1.1,它引入了许多改进,旨在提高网络性能,降低延迟,并优化...

    用Ruby写的一个网络爬虫

    用Ruby写的一个网络爬虫,用到了正则表达式 和哈希表

    Ruby-OAuth2一个OAuth20协议的Ruby封装

    Ruby-OAuth2是Ruby编程语言中的一个库,用于实现OAuth 2.0协议。OAuth 2.0是一种授权框架,广泛应用于允许第三方应用安全地访问用户在其他服务上的数据,如Facebook、Google或Twitter,而无需获取用户的完整密码。...

    Ruby-Mailman一个Ruby邮件接收处理微框架

    **Ruby-Mailman:一个高效的邮件接收与处理框架** Ruby-Mailman 是一个专门为 Ruby 开发者设计的轻量级邮件处理微框架。它旨在简化邮件服务器接收到的电子邮件的处理流程,帮助开发者构建邮件相关的应用程序,如...

    Ruby-Referral一个命令行工具用于查找过滤和排序Ruby代码的定义和引用

    变量在Ruby中分为局部变量、实例变量、类变量和全局变量,Referral能够追踪它们的使用情况,有助于识别潜在的变量冲突和未初始化的问题。 此外,Referral还提供了过滤功能,这意味着用户可以定制搜索条件,只关注...

    Ruby-Unread管理ActiveRecord对象的已读未读状态

    总之,Ruby-Unread是一个强大的工具,它扩展了ActiveRecord的功能,使得在Rails应用中处理已读/未读状态变得轻而易举。结合其丰富的查询选项和灵活的配置,它能很好地适应各种需求,提高开发效率。

    Ruby-MailCatcher一个抓取和查看邮件的web工具

    3. **API访问**:MailCatcher提供了一个简单的HTTP API,允许你通过编程方式获取邮件信息。 **六、总结** MailCatcher是Ruby开发中的得力助手,它简化了邮件调试过程,提高了开发效率。通过灵活的配置和丰富的特性...

    Ruby-Shield用于路由和模型上下文的认证协议

    Ruby-Shield是一个专门为Ruby开发的身份验证和授权框架,它提供了灵活且可扩展的机制来处理路由和模型上下文中的安全需求。在理解Shield的核心概念之前,我们先来探讨一下身份验证和OAuth这两个关键概念。 身份验证...

    Ruby-LazyHighCharts一个简单和非常灵活的方式从ruby代码使用HighCharts

    Ruby-LazyHighCharts是一个针对Ruby编程语言设计的库,它提供了一种简单且高度灵活的方法来利用HighCharts库进行数据可视化。HighCharts是一个广泛使用的JavaScript图表库,用于在Web应用中创建高质量的交互式图表。...

    ruby-git, ruby/Git是一个 ruby 库,可以通过将系统调用包装到Git二进制文件来创建读取和操作Git存储库.zip

    ruby-git, ruby/Git是一个 ruby 库,可以通过将系统调用包装到Git二进制文件来创建读取和操作Git存储库 用于 ruby的 Git库在 ruby 中使用Git的库。主页项目源代码的Git public 位于:...

    Ruby-Ruby框架用于在一个地方保存所有类型的通知邮件程序推送通知等

    在标题和描述中提到的“Ruby框架用于在一个地方保存所有类型的通知(邮件程序,推送通知等)”,这可能指的是Ruby的一个特定库或者框架,用于集中管理应用程序中的各种通知机制。 这个框架可能是`ActiveDelivery`,...

    ruby脚本交互.rar

    综上所述,"ruby脚本交互.rar"中的源码可能是易语言程序调用和交互Ruby脚本的一个实例,展示了两种语言在实际项目中的协作方式。通过深入学习和理解,我们可以提高编程效率,实现更复杂的软件功能。

    Ruby-一个Ruby的例子

    在压缩包`RubyDemo_First-master`中,我们可以假设这是一个简单的Ruby项目,可能包含一个或多个Ruby文件(`.rb`),这些文件可能包含各种示例代码,比如控制台应用、基础的数据结构操作、面向对象编程示例等。...

    Ruby-Whois一个智能纯Ruby实现的WHOIS客户端与解析器

    Ruby-Whois是一个高效、灵活且完全用Ruby语言编写的WHOIS客户端和解析库。它设计用于查询域名、IP地址和其他WHOIS相关的记录,并能够处理各种服务器响应格式。这个库的强大之处在于它不仅可以发送WHOIS请求,还可以...

    ruby mail资料

    Ruby Mail 是一个 Ruby 语言的库,用于处理电子邮件的创建、发送和解析。它提供了方便的接口,使得在 Ruby 应用程序中处理邮件变得简单。这个压缩包可能包含了一系列关于如何使用 Ruby Mail 库的文档、示例代码或者...

    Ruby-RESTClient简单的HTTP和Ruby的REST客户端

    Ruby-RESTClient是一个轻量级、易于使用的库,专门用于执行HTTP和RESTful API调用。这个库使得在Ruby环境中进行Web服务交互变得极其简单,是开发者进行API测试和集成时的常用工具。RESTClient提供了丰富的功能,可以...

Global site tag (gtag.js) - Google Analytics