python - 推特 API 的 Python GUI
问题描述
import tweepy
import csv
import json
import datetime
import pandas as pd
from Tkinter import *
def twitter(e1):
consumer_key = 'BPJYMwo4Z6ueJ'
consumer_secret = 'zB0SfmOtWWAm4T1N6akLD0ut0TKB2Hc6Yxmry'
access_token = '380414482-Z1ZZgJz4V8Y5epzDgrehB'
access_token_secret = 'x1QINIBHeW9DJc7vG1SqI9p3d13H'
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth, wait_on_rate_limit=True)
#####United Airlines
# Open/Create a file to append data
csvFile = open('Twitter' + (datetime.datetime.today().strftime('%d%m%Y%H%M')) + '.json', 'a')
# Use csv Writer
# csvWriter = csv.writer(csvFile)
print("fetching started........")
for tweet in tweepy.Cursor(api.search, q=e1, count=1, lang="en", since="2018-07-26").items():
csvFile.write(json.dumps(tweet._json))
csvFile.write("\n")
print("fetching end........")
csvFile.close()
if __name__ == '__main__':
master = Tk()
Label(master, text="Hashtag").grid(row=0)
e1 = Entry(master)
e1.grid(row=0, column=1)
Button(master, text='Quit', command=lambda: twitter(e1)).grid(row=3, column=0, sticky=W, pady=4)
master.mainloop()
代码运行,但是当我在 gui 中添加文本时,获取开始并卡住。我尽我所能,但没有运气。我知道问题出在 twitter(e1) 上,但我不知道如何解决它。
解决方案
您需要从条目中提取文本,而不是传递整个对象:
command=lambda: twitter(e1.get().strip())
推荐阅读
- matlab - 在 Matlab 中,如何定向到位于主目录后面一个文件夹的文件夹?
- python - 在 numpy.save 中写入泡菜文件时出现 FileNotFoundError
- powershell - 如何使用 Powershell 将 CSV 文件上传到 SharePointOnline
- elasticsearch - 防止关键字填充 Elasticsearch
- postgresql - 我正在尝试将当前的 'Month, YYYY' 设置为临时表中的列名,以便稍后将其导出为 JSON 键,但无法这样做?
- python - 薄度比计算 - 错误的结果
- c++ - 将值分配给必须是可平凡复制的 volatile 结构
- facebook - 是否可以从 google adword api 和 facebook ads manager api 获取帐户活动日志?
- node.js - 我正在制作在线聊天机器人,但我对承诺有一些问题
- virtual-machine - 虚拟机无法启动 Ubuntu