初级开发人员在这里提出了一个gmail api问题。我的rails应用程序需要搜索和检索大约300个gmail消息,然后使用nokogiri将其机构抓取。我已经安装了google-api-client gem,并成功配置了此人guide之后的授权。使用他们的示例,我可以使用以下代码成功检索用户的标签列表:
client = Signet::OAuth2::Client.new(access_token: session[:access_token])
client.expires_in = Time.now + 1_000_000
service = Google::Apis::GmailV1::GmailService.new
service.authorization = client
@labels_list = service.list_user_labels('me')
我尝试搜索google的ruby api文档,了解如何进行我想要的搜索,但他们的文档非常稀疏。我似乎需要至少运行两个单独的查询 - 第一个查询符合搜索的发件人和日期参数的邮件列表,然后再检查邮件正文。虽然这样做的语法不在于此。我已经使用了#list_user_messages
和#get_user_message
的gmail ruby api实例方法,并且没有运气让他们工作。有这方面经验的人吗?
答案 0 :(得分:1)
您可能需要查看Google API Client上有关Ruby的文档。 这将解释使用Ruby的Google API的基本功能和实现。
for querying sender试试这个:
Maven > Update project
对于日期,您只能使用以下操作进行过滤:@emails = @google_api_client.execute(
api_method: @gmail.users.messages.list,
parameters: {
userId: "me",
# searching messages based on number of queries:
# https://developers.google.com/gmail/api/guides/filtering
q: "from:" + email.to_s
},
headers: {'Content-Type' => 'application/json'}
)
,after:
,before:
,older:
。您可能需要查看可以与Gmail一起使用的supported operators列表。
希望这有帮助。