pymsq mysql python_使用pymysq很难将数据插入MySQL数据库

我用python3编写了一个小脚本,它使用feedparser库获取RSS新闻提要。在

然后我遍历条目(dictionary),然后使用try/except块将数据插入到使用pymysql的MySQL数据库中(最初我尝试使用MySQLDB,但读取here和其他不适用于Python3或更高版本的位置)

我最初在git-hub上遵循了PyMySQL示例,但是这对我不起作用,我不得不对pymysql使用不同的语法,就像在digital ocean上一样。然而,当我在他们的网站上测试他们的例子时,这对我很有效。在

但是当我试图将它合并到查询中时,出现了一个错误,因为它不会运行try块的代码,而只是每次运行异常代码。在

这是我的密码#! /usr/bin/python3

# web_scraper.py 1st part of the project, to get the data from the

# websites and store it in a mysql database

import cgitb

cgitb.enable()

import requests,feedparser,pprint,pymysql,datetime

from bs4 import BeautifulSoup

conn = pymysql.connect(host="localhost",user="root",password="pass",db="stories",charset="utf8mb4")

c = conn.cursor()

def adbNews():

url = 'http://feeds.feedburner.com/adb_news'

d = feedparser.parse(url)

articles = d['entries']

for article in articles:

dt_obj = datetime.datetime.strptime(article.published,"%Y-%m-%d %H:%M:%S")

try:

sql = "INSERT INTO articles(article_title,article_desc,article_link,article_date) VALUES (%s,%s,%s,%s,%s)"

c.execute(sql,(article.title, article.summary,article.link,dt_obj.strftime('%Y-%m-%d %H:%M:%S'),))

conn.commit()

except Exception:

print("Not working")

adbNews()

我不太清楚我做错了什么。我已经将字符串转换为MySQLDATETIME类型的格式。因为我最初没有这个,但是每次我运行这个程序时,数据库中没有存储任何内容,并且会打印出异常。在

编辑:

在阅读了danielroseman的评论之后,我删除了try/except块,并阅读了python给我的错误。这是因为在我的sql查询中有一个额外的参数。在

这是他编辑的工作代码

^{pr2}$

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值