python - 需要在哪里连接到数据库?
问题描述
我正在创建一个 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)
解决方案
您可以连接到远程数据库或本地计算机。定义你想使用的数据库,所以在你的数据库服务器中是 127.0.0.1:PORT (这意味着数据库是你的机器)(端口会根据你想要的 SGDB 而改变
推荐阅读
- c# - 在 app.config 中安全地存储密码 - 信息过载
- django - AWS Elastic Beanstalk Django 应用程序健康检查问题
- javascript - FFmpeg:同时使用 xfade 和 crossfade 时音频不同步
- mysql - 使用 sequelize nodejs 仅查询当前月份
- delphi - 我可以在 VCL 应用程序上显示 SVG 图像吗?
- c# - C# WinForms 需要保证 UserControl 大小
- jmeter - 在 jmeter 中为多个并发脚本执行设置堆内存
- python - PyTorch:仅针对参数子集计算 Hessian?
- java - 如何将多个值添加到重复枚举类型
- python - 在python中使用两个函数,第一个用for循环生成数字,最后一个在python中打印所有数字