我对Mysqldb和Python很陌生。我设法将所有链接存储到一个表中。现在,我想检索这些链接,并使用urllib获取它们。我的代码应该将它们保存到Mysql表中。
import MySQLdb
import urllib
mydb = MySQLdb.connect(
host='localhost',
user='root',
passwd='shailang',
db='urls')
cursor = mydb.cursor()
with open ("s.txt","r") as file:
for line in file:
cursor.execute("INSERT INTO url(links) VALUES(%s)", line)
cursor.execute("SELECT * FROM url")
links = cursor.fetchall()
for row in links:
page = urllib.urlopen(row[0])
text = page.read()
#close the connection to the database.
mydb.commit()
cursor.close()
print "Done"发布于 2015-10-07 11:36:34
在for循环中,使用row[0]而不是row。
for row in links:
page = urllib.urlopen(row[0])
text = page.read()数据库中的记录可以有多个值。row变量是一个元组(包含特定记录的列的值),links变量是一个列表(包含表示记录的元组)。
由于您只有一个列,并且需要该列的数据,所以我们需要使用row[0]。
https://stackoverflow.com/questions/32990467
复制相似问题