我最近一直在使用python报纸库,我正在尝试创建一个系统,该系统可以搜索BBC新闻网站上的所有文章,并将每个标题插入WAMP内PC上的MySQL数据库中服务器。我的问题是,以下代码同时返回了实际的文章标题和空值,这显然是我在数据库中不想要的。有什么办法可以阻止这种情况的发生?
谢谢:)
import newspaper
import mysql.connector
mydb = mysql.connector.connect(
host="localhost",
user="root",
passwd="",
database="headlines"
)
mycursor = mydb.cursor()
sql = "insert into headlines (headline) values (%s)"
search = newspaper.build('https://www.bbc.co.uk/news')
for article in search.articles:
mycursor.execute(sql, (article.title,))
mydb.commit()
答案 0 :(得分:0)
我假设您数据库中的空条目是通过将None
来自Python的条目显示在您的MySQL服务器上而出现的。在这种情况下,您只需检查文章是否为None
,然后跳过将其上传到数据库的操作即可。
for article in search.articles:
if article is None:
continue
mycursor.execute(sql, (article.title,))
mydb.commit()