我正在尝试使用Google API中提到的python发出监视请求,但是它不起作用。
request = {
'labelIds': ['INBOX'],
'topicName': 'projects/myproject/topics/mytopic'
}
gmail.users().watch(userId='me', body=request).execute()
Run Code Online (Sandbox Code Playgroud)
我找不到要使用gmail.users()功能的库或包。如何使用访问令牌发出监视请求?
我试图Gmail inbox event使用Google Pub/Sub引用官方文档作为我的应用程序的推送通知.虽然我声明labelIds为['INBOX'],但Gmail API会发送所有事件的通知(即INBOX,SENT,IMPORTANT等).我的python代码如下所示,
credentials = get_credentials()
http = credentials.authorize(httplib2.Http()
service = discovery.build('gmail', 'v1', http=http)
request = {
'labelIds': ['INBOX'],
'topicName': 'projects/myproject/topics/getNotification'
}
service.users().watch(userId='me',body=request).execute()
Run Code Online (Sandbox Code Playgroud)
如何获取Inbox事件通知而不是全部通知
private void getUsersWithin24Hours(String id, Map < String, Object > payload) throws JSONException {
JSONObject json = new JSONObject(String.valueOf(payload.get("data")));
Query query = new Query();
query.addCriteria(Criteria.where("user_id").is(id).and("timezone").in(json.get("timezone")).and("gender").in(json.get("gender")).and("locale").in(json.get("language")).and("time").gt(getDate()));
mongoTemplate.getCollection("user_log").distinct("user_id", query.getQueryObject());
}
Run Code Online (Sandbox Code Playgroud)
我打算进行查询并从 mongodb 获取结果,并且使用 mongo 终端命令成功了:
db.getCollection('user_log').find({"user_id" : "1", "timezone" : {$in: [5,6]}, "gender" : {$in : ["male", "female"]}, "locale" : {$in : ["en_US"]}, "time" : {$gt : new ISODate("2017-01-26T16:57:52.354Z")}})
Run Code Online (Sandbox Code Playgroud)
但是当我尝试它时,它给了我以下错误。
org.bson.codecs.configuration.CodecConfigurationException:找不到类 org.json.JSONArray 的编解码器
这样做的理想方法是什么?
提示:实际上我认为这部分 json.get("timezone") 在我的代码中发生了错误。因为它包含数组。当我使用硬编码字符串数组时,此代码有效
我得到了一个从 db 调用返回的列表。
List<employee> list = empolyeeRepository.findByEmployeeId(id);
Run Code Online (Sandbox Code Playgroud)
列表包含员工 pojo 类对象。我想删除一个属性,让我们在从休息电话返回时说“员工银行账户号”。
@RequestMapping(value = "/employeeInformation/{id}",
method = RequestMethod.GET,
produces = MediaType.APPLICATION_JSON_VALUE)
@Timed
public List<Employee> getEmployeeInformation(@PathVariable("id") String id) throws Exception {
return empolyeeRepository.findByEmployeeId(id);
}
Run Code Online (Sandbox Code Playgroud)
是否有任何注释或良好做法可以做到这一点?
我想要拆分"Onehundredthousand"到"one" "hundred" "thousand"使用python.我怎样才能做到这一点?
我正在使用"WATCH"requset将我的电子邮件连接到pub/sub API.但是当我要使用下面的代码(由谷歌提供)停止通知时,它不起作用.我正在使用python客户端.
credentials = get_credentials()
http = credentials.authorize(httplib2.Http())
service = discovery.build('gmail', 'v1', http=http)
result = service.users().stop(userId='me')
Run Code Online (Sandbox Code Playgroud)
我的推荐:
**
labels = ['UNREAD', 'CATEGORY_PERSONAL', 'INBOX']
incomingLabels = ['UNREAD','IMPORTANT' 'CATEGORY_PERSONAL', 'INBOX']
Run Code Online (Sandbox Code Playgroud)
**
labels array是静态数组。我如何检查incoming array包含labels array.
我的尝试
intersectionOfTwoArrays = list(set(incomingLabels) & set(labels))
if np.array_equal(labels, intersectionOfTwoArrays):
//Do somthing
Run Code Online (Sandbox Code Playgroud)
该尝试未成功,因为intersectionOfTwoArrays's与订购的顺序不同labels array
任何人都可以帮助我吗?
我想将一个字符串变量从 Shell 脚本传递到我的 python 脚本并将其存储在sys.argv[1]. 目前,这是我的情况:
主目录
TEST="This is a test"
python main.py $TEST
Run Code Online (Sandbox Code Playgroud)
主要.py
if __name__ == '__main__':
print(sys.argv[1])
Run Code Online (Sandbox Code Playgroud)
结果:
This
Run Code Online (Sandbox Code Playgroud)
$TEST我该如何发送呢sys.argv[1] = "This is a test"?我不想在发送字符串后重建它。
我有这样的数组
var array =["123", "456", "789"]
我如何将其转换为var string = "123", "456", "789"
到目前为止,我尝试了加入和其他事情,但无法产生我想要的结果。
知道如何实现吗?
python ×5
gmail-api ×3
arrays ×2
java ×2
argv ×1
hibernate ×1
javascript ×1
mongodb ×1
python-2.7 ×1
shell ×1
spring-boot ×1
string ×1
sys ×1