0

我正在尝试编写一个脚本来从 Insightly 获取项目数据并发布到 10000 英尺。本质上,我想在一个系统中获取任何新创建的项目,并在另一个系统中创建相同的实例。两者都有“项目”的概念

我对此非常陌生,但我只是在 Insightly 中获取某些项目参数以传递到其他系统(PROJECT_NAME、LINKS:ORGANIZATION_ID、DATE_CREATED_UTC)等等。

我计划在昨天只为具有 DATE_CREATED_UTC > 的 POST 项目添加逻辑,但我对如何设置脚本来获取 JSON 字符串并创建 python 变量(JSON 日期字符串到日期时间)一无所知。这是我当前的代码。我只是打印出一些我需要的变量来熟悉代码。

import urllib, urllib2, json, requests, pprint, dateutil
from dateutil import parser
import base64


#Set the 'Project' URL
insightly_url = 'https://api.insight.ly/v2.1/projects'
insightly_key = 
api_auth = base64.b64encode(insightly_key)


headers = {
                'GET': insightly_url,
                'Authorization': 'Basic ' + api_auth

                }
req = urllib2.Request(insightly_url, None, headers)

response = urllib2.urlopen(req).read()

data = json.loads(response)
for project in data:
    project_date = project['DATE_CREATED_UTC']
    project_name = project['PROJECT_NAME']
    print project_name + " " + project_date

任何帮助,将不胜感激

编辑:

我已经用以下内容更新了以前的代码:

for project in data:
    project_date = datetime.datetime.strptime(project['DATE_CREATED_UTC'], '%Y-%m-%d %H:%M:%S').date()
    if project_date > (datetime.date.today() - datetime.timedelta(days=1)):
        print project_date
    else:
        print 'No New Project'

这将返回昨天之后创建的每个项目,但现在我需要隔离这些项目并将它们发布到另一个系统

4

1 回答 1

0

datetime这是一个从已解析字符串返回对象的示例。我们将使用该datetime.strptime方法来完成此操作。以下是可用于创建格式字符串的格式代码列表。

>>> from datetime import datetime
>>> date_string = '2014-03-04 22:30:55'
>>> format = '%Y-%m-%d %H:%M:%S'
>>> datetime.strptime(date_string, format)
datetime.datetime(2014, 3, 4, 22, 30, 55)

如您所见,该datetime.strptime方法返回一个datetime对象。

于 2014-03-04T15:29:07.060 回答