首页 > 解决方案 > 需要在哪里连接到数据库?

问题描述

我正在创建一个 twitter 机器人,用于在 twitter 上搜索股票代码。然后我将它们发送到数据库。我在这里遇到的问题是正在发送的列表没有改变。也许我必须继续连接到数据库,但我不知道我的问题出在哪里。谁能弄清楚如何让代码列表每次都不同?

def searchTwit():
    tweets = api.search("#stocks",count=100)
    return tweets 



print("connecting to database")
#connecting to the database
conn = pyodbc.connect(
    "Driver={SQL Server};"
    "Server=..............;"
    "Database=master;"
    "Trusted_Connection=yes;")
cursor = conn.cursor()

tickList=[]


def getTicker(tweets):
    for tweet in tweets:
        if "$" in tweet.text:
            x = tweet.text.split()
            for i in x:
                if i.startswith("$") and i[1].isalpha():
                    i.strip(".")
                    i.upper()
                    tickList.append(i)

# print(var_string)
def retrieveTickers():
    for i in tickList:
        cursor.execute('INSERT INTO master.dbo.TickerTable (TickerName) VALUES (?);', (i))
    conn.commit()

    # thing to run

print("about to do while ")

while True:
    sleep(60 - time() %60)
    print("searchtwit")
    searchTwit()
    theTweets = searchTwit()
    getTicker(theTweets)
    print("getting Tickers")
    retrieveTickers()
    print("sending tickers")
    print(tickList)
    tickList=[]
    print(tickList) 

标签: pythondatabasetweepy

解决方案


您可以连接到远程数据库或本地计算机。定义你想使用的数据库,所以在你的数据库服务器中是 127.0.0.1:PORT (这意味着数据库是你的机器)(端口会根据你想要的 SGDB 而改变


推荐阅读