我有一本词典列表。为什么我会选择这种奇怪的方法?这是网络抓取工作的一部分,其中我将大量网页的不同部分存储在不同的字典中。我有列名来跟踪数据。我没有订购 dicts 因为我在 Python 2.6.6 上。
存储此数据的更有效方法是什么(字典到 mysql)?每次我抓取网站时,我都会创建一个临时表来存储数据以供进一步处理。我首先为 id 创建一条记录,然后更新该 id 的列。有没有更快更有效的方法呢?谢谢!
Python
import MySQLdb
db=MySQLdb.connect(db="mydb")
c=db.cursor()
mydict = {'1': [{'First': 'John', 'Last': 'Doe'}, {'Company': 'Trulia Inc.', 'Title': 'CEO', 'YearsattheCompany': 4}, {'Cell': '216-453-4322', 'Home': None}]}
for key, value in mydict.items():
id = key
c.execute("insert into deldictmysql (id) values (%s)" % id)
for eachdict in value:
print eachdict
for finalkey, finalvalue in eachdict.items():
print finalkey, finalvalue
if finalvalue:
query = "update deldictmysql set %s = '%s'"
c.execute(query % (finalkey, finalvalue))
c.close()
MySQL
create table deldictmysql (id integer, first varchar(40), last varchar(40), company varchar(200), title varchar(200), yearsatthecompany integer, cell varchar(20), home varchar(20));
输出
select * from deldictmysql;
"id" "first" "last" "company" "title" "yearsatthecompany" "cell" "home"
"1" "John" "Doe" "Trulia Inc." "CEO" "4" "216-453-4322" ""