用python写爬虫--4.1存入sqlite3
2018-04-02 本文已影响0人
ddm2014
sqlite如其名,lite比较小,方便。
还是什么值得买,这次把爬取下来的信息存入sqlite3里面
还是分为3步
1.连接数据库
2.存入数据
3.关闭数据库
import sqlite3 as lite
def sqlite():
con = lite.connect('smzdm.sqlite')
cur = con.cursor()
cur.execute('CREATE TABLE IF NOT EXISTS zdm (id INTEGER PRIMARY KEY AUTOINCREMENT ,title varchar(50),href varchar(50),price varchar(50))')
sql = "insert into zdm(title,href,price) values(?,?,?)"
url = 'https://faxian.smzdm.com/'
head = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36'
}
re = requests.get(url, headers=head)
file = pq(re.text)
for item in file('.feed-block-ver').items():
hr = item('a').attr('href')
title = item('.feed-ver-title').text()
price = item('.z-ellipsis').text()
cur.execute(sql, [title, hr, price])
con.commit()
con.close()
1.连接数据库
con = lite.connect('smzdm.sqlite')
smzdm.sqlite是数据库smzdm,有就连接,没有就创建
下面两句是建立游标和创建表
2.插入信息,实际是这句cur.execute(sql, [title, hr, price])
sql是一句sqlite的插入句式,
sql = "insert into zdm(title,href,price) values(?,?,?)"
zdm-表名,后跟列名,values有几列就插入几个问号
之后是插入的信息列表,要求是list
3.关闭连接,先提交再关闭