我是python和编程的新手。我编写这个原始脚本是为了处理来自opengraph的一些Facebook数据
它的作品,并产生了.csv我想要的
def main():
ts = FacebookSearch()
data = ts.search('appliance')
js = json.loads(data)
messages = ([msg['created_time'], msg.get('message', 'Key "message" is not present.').replace('\n', '').replace(',', '').encode('utf8'), msg['from']['id']] for msg in js.get('data', []))
write_csv('fb_washerdryer.csv', messages, append=True)
上述代码的问题:
它又长又可怕 2.)我想将“message”的总大小缩短到900 varchar
为了完成上述任务,我将消息分解为一个自己的函数:
def main():
ts = FacebookSearch()
data = ts.search('appliance')
js = json.loads(data)
def extract_info(msg):
created_time = msg['created_time']
message = msg.get('message', 'Key "message" is not present.').replace('\n', '').replace(',', '').encode('utf8')
user_id = msg['from']['id']
return (created_time, message, user_id)
messages = (extract_info(msg) for msg in js.get('data', []))
write_csv('fb_washerdryer.csv', messages, append=True)
我没有得到一个错误,当我运行这个新代码,但我不打印任何东西
任何关于我做了什么错事的想法。因为我没有一个错误,我有点卡住了,还没有得到我的第二个任务,缩短'消息'字符串
看起来像是压痕问题。第二个示例的最后两行在
extract_info
内,而不是main
。尝试:或者,为了防止嵌套函数混淆:
相关问题 更多 >
编程相关推荐