環境: Ubuntu 16.04.3, python 2.7.14

https://qiita.com/kenmatsu4/items/23768cbe32fe381d54a2
twitterのタイムラインから単語を収集し解析するプログラムの勉強のために、上記ページのプログラムで、Twitterのタイムラインを収集するプログラムを動かしたいです。

functions.pyで以下のようにエラーが表示されます。

$ python functions.py

Traceback (most recent call last):
  File "functions.py", line 31, in <module>
    print(getTweetData())
TypeError: getTweetData() takes exactly 3 arguments (0 given)

自分の手元にコピーし、編集したソースコードは以下のようになっています。

functions.py

from initialize import initialize
def getTweetData(search_word, max_id, since_id):
    global twitter
    url = 'https://api.twitter.com/1.1/search/tweets.json'
    params = {'q': 'search_word',
              'count':'100',
    }
    # max_idの指定があれば設定する
    if max_id != -1:
        params['max_id'] = max_id
    # since_idの指定があれば設定する
    if since_id != -1:
        params['since_id'] = since_id

    req = twitter.get(url, params = params)   # Tweetデータの取得

    # 取得したデータの分解
    if req.status_code == 200: # 成功した場合
        timeline = json.loads(req.text)
        metadata = timeline['search_metadata']
        statuses = timeline['statuses']
        limit = req.headers['x-rate-limit-remaining'] if 'x-rate-limit-remaining' in req.headers else 0
        reset = req.headers['x-rate-limit-reset'] if 'x-rate-limit-reset' in req.headers else 0
        return {"result":True, "metadata":metadata, "statuses":statuses, "limit":limit, "reset_time":datetime.datetime.fromtimestamp(float(reset)), "reset_time_unix":reset}
    else: # 失敗した場合
        print ("Error: %d" % req.status_code)
        return{"result":False, "status_code":req.status_code}

print(getTweetData())

def obj_nullcheck(string): # Y if X else Z
    return False if string is None else True

def is_exist_id(id_str):
    return tweetdata.find({'id':long(id_str)},{'id':1}).count() > 0

initialize.py

from requests_oauthlib import OAuth1Session
from requests.exceptions import ConnectionError, ReadTimeout, SSLError
import json, datetime, time, pytz, re, sys, traceback, unicodedata, pymongo
from pymongo import MongoClient
import numpy as np
from collections import defaultdict
from bson.objectid import ObjectId
import MeCab as mc
from logging import getLogger, DEBUG
from logging.handlers import SysLogHandler

KEYS = {
        'consumer_key':'*****************',
        'consumer_secret':'*****************',
        'access_token':'*****************',
        'access_secret':'*****************',
       }

twitter = None
connect = None
db      = None
tweetdata = None
meta    = None
posi_nega_dict = None

def initialize(): # twitter接続情報や、mongoDBへの接続処理等initial処理実行
    global twitter, twitter, connect, db, tweetdata, meta
    twitter = OAuth1Session(KEYS['consumer_key'],KEYS['consumer_secret'],
                            KEYS['access_token'],KEYS['access_secret'])

    connect = MongoClient('localhost', 27017)
    db = connect.kenko
    tweetdata = db.tweetdata
    meta = db.metadata
    posi_nega_dict = db.posinegadict

initialize()
print(initialize())

自分で調べて実行したことは
1.global変数twitterの中身が定義されていないので twitter = で
req = twitter.get(url, params = params) # Tweetデータの取得までを {}で囲む
→ 結果 

File "functions.py", line 7
url = 'https://api.twitter.com/1.1/search/tweets.json'
    ^

SyntaxError: invalid syntax

色々試すが無関係そうだと判断。

  1. initialize.py内のtwitterのapiキーが間違っている
    → キーを確認。問題なし。

  2. 0 givenとエラーに表示されているので、 search_word, max_id, since_id が機能していないのではと考えたがその先どうすれば直るのかが不明

お手数ですが、アドバイスよろしくお願いします。