你好,我对编程非常陌生,几周前才开始。如果我能得到一些帮助,我将不胜感激。提前谢谢!
我的python脚本(流)_推特.py)每分钟从twitter上传200-300条tweet。脚本位于“/home/computer/Twitter/examples/stream”中_推特.py'
我有一个NLP(自然语言处理)bash脚本,它分析句子并在bash上打印出来。NLP脚本(corenlp.sh公司)位于“/家/电脑/斯坦福德”/corenlp.sh公司'
如果我创建了一个新的bash脚本,如何将tweet传输到NLP中?这个脚本看起来怎么样?
我的python tweet脚本(流)_推特.py)需要以utf-8格式输出文本,如何更改脚本才能这样做。
NLP需要一段时间来加载,如果tweets正在冲进NLP,而NLP还没有加载,它会影响我的脚本吗?如果是的话,我能做什么?怎么做?
看看这条小溪_推特.py脚本
from TwitterAPI import TwitterAPI
TRACK_TERM = ‘keyword1,keyword2,keyword3'
CONSUMER_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
CONSUMER_SECRET = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
ACCESS_TOKEN_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
ACCESS_TOKEN_SECRET = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
api = TwitterAPI(CONSUMER_KEY,
CONSUMER_SECRET,
ACCESS_TOKEN_KEY,
ACCESS_TOKEN_SECRET)
r = api.request('statuses/filter', {'track': TRACK_TERM})
for item in r:
print(item['text'] if 'text' in item else item)
看看NLP脚本
OS=`uname`
# Macs (BSD) don't support readlink -e
if [ "$OS" == "Darwin" ]; then
scriptdir=`dirname $0`
else
scriptpath=$(readlink -e "$0") || scriptpath=$0
scriptdir=$(dirname "$scriptpath")
fi
echo java -mx3g -cp \"$scriptdir/*\" edu.stanford.nlp.pipeline.StanfordCoreNLP $*
java -mx3g -cp "$scriptdir/*" edu.stanford.nlp.pipeline.StanfordCoreNLP $*
在Linux shell上,可以通过管道将一个命令的输出作为另一个命令的输入,如下所示:
所以在你的例子中,这看起来是这样的:
但是为了使这项工作正常,您可能需要更改
corenlp.sh
,以便调用java StanfordCoreNLP程序的最后一个命令在本例中从管道(/dev/stdin)读取输入。因此,将最后一行改为:为了使python脚本打印UTF-8编码的字符串,您需要将python脚本最后更改为:
我不认为当Java程序需要一些时间来启动时会有问题,我认为python脚本会被阻塞,直到管道缓冲区被清空。你知道吗
相关问题 更多 >
编程相关推荐